Tôi đang sử dụng apache kafka để sản xuất và tiêu thụ một tệp có dung lượng 5GB. Tôi muốn biết nếu có một cách mà thông điệp từ chủ đề được tự động loại bỏ sau khi nó được tiêu thụ. Tôi có cách nào để theo dõi tin nhắn được tiêu thụ không? Tôi không muốn xóa nó bằng tay.Xóa tin nhắn sau khi tiêu thụ nó trong KAFKA
Trả lời
Trong Kafka, trách nhiệm của những gì đã được tiêu thụ là trách nhiệm của người tiêu dùng và đây cũng là một trong những lý do chính khiến Kafka có khả năng mở rộng ngang lớn như vậy.
Sử dụng API người tiêu dùng cấp cao sẽ tự động thực hiện việc này cho bạn bằng cách cam kết bù trừ tiêu thụ trong Zookeeper (hoặc tùy chọn cấu hình gần đây đang được chủ đề Kafka sử dụng để theo dõi tin nhắn được tiêu thụ).
API người tiêu dùng đơn giản giúp bạn giải quyết cách thức và vị trí tự mình theo dõi các thông điệp đã tiêu thụ.
Việc xóa thư trong Kafka được thực hiện tự động bằng cách chỉ định thời gian lưu cho một chủ đề hoặc bằng cách xác định hạn ngạch đĩa cho trường hợp của bạn một tệp 5 GB, tệp này sẽ bị xóa sau khoảng thời gian lưu giữ mà bạn xác định được thông qua, bất kể nó đã được tiêu thụ hay chưa.
Theo kiến thức của tôi, bạn có thể Xóa dữ liệu được tiêu thụ tạo thành nhật ký bằng cách giảm thời gian lưu trữ. Thời gian mặc định cho nhật ký được đặt cho 168 giờ và sau đó Dữ liệu được tự động xóa khỏi Kafka-Topic mà bạn đã tạo. Vì vậy, đề nghị của tôi là để giảm đi đến các server.properties
mà nằm trong thư mục cấu hình và thay đổi đến một thời gian tối thiểu. do đó, họ không có dữ liệu sau khoảng thời gian cụ thể mà bạn đã đặt cho log.retention.hours. Do đó, vấn đề của bạn sẽ được giải quyết.
log.retention.hours = 168
Giữ mã hóa
- 1. Tải chủ đề từ tin nhắn kafka
- 2. Xóa nhật ký sau khi tiêu thụ: logstash
- 3. Tiêu thụ không xác nhận tin nhắn từ RabbitMq
- 4. Người tiêu dùng tin nhắn RabbitMQ ngừng tiêu thụ thông báo
- 5. WebSocket đóng sau 1000 tin nhắn
- 6. Spring Integration Kafka Consumer Listener không nhận được tin nhắn
- 7. tải chủ đề từ tin nhắn kafka trong tia lửa
- 8. Trạng thái bộ tách sau khi "tiêu thụ" trong Luồng
- 9. Nhận tin nhắn cuối cùng từ Kafka tiêu dùng giao diện điều khiển kịch bản
- 10. Đảm bảo gửi nhiều tin nhắn đến Kafka cluster
- 11. Tiêu thụ hàng đợi tin nhắn thỏmq với nhiều chủ đề (Python Kombu)
- 12. Response.TransmitFile và xóa nó sau khi truyền
- 13. Visio 2010 UML Object Lifeline đổi tên chính nó khi một tin nhắn bị xóa
- 14. Kafka: Không có thông báo nào được thấy trên bảng điều khiển người tiêu dùng sau khi tin nhắn được gửi bởi Nhà sản xuất Java
- 15. Kafka có người tiêu dùng hàng loạt không?
- 16. Django: Xóa tin nhắn trước khi chúng được hiển thị
- 17. Kafka - Docker - Lỗi khi gửi tin nhắn từ Máy chủ đến Vùng chứa (Lô hết hạn)
- 18. Java, Cách nhận số lượng tin nhắn trong một chủ đề trong apache kafka
- 19. Sau khi thêm Mục tiêu WatchKit Tập tin của nó sẽ chuyển sang màu đỏ
- 20. Bảo quản tin nhắn JSF sau khi chuyển hướng
- 21. Peek ở dòng kế tiếp, nhưng không tiêu thụ nó
- 22. Hiển thị tin nhắn sau khi cài đặt Gói
- 23. Zookeeper có KeeperException nhưng Kafka có thể tạo chủ đề và sản xuất/tiêu thụ
- 24. MailKit Xóa tin nhắn đơn từ gmail
- 25. kafka phiên người tiêu dùng thời gian ra
- 26. Có thể lấy được khoảng trống tin nhắn cụ thể trong Kafka + SparkStreaming không?
- 27. boost streambuf tiêu thụ và cam kết, nó là gì
- 28. Chiến lược hiệu quả để tránh các thư trùng lặp trong người tiêu dùng apache kafka
- 29. Kafka không xóa key với bia mộ
- 30. Chi phí gửi tin nhắn trong mục tiêu-C