apache-kafka - partitions - max poll interval ms
Eliminar mensaje después de consumirlo en KAFKA (2)
Estoy usando apache kafka para producir y consumir un archivo de 5GB de tamaño. Quiero saber si hay una forma en que el mensaje del tema se elimina automáticamente después de que se consume. ¿Tengo alguna forma de hacer un seguimiento de los mensajes consumidos? No quiero eliminarlo manualmente.
En Kafka, la responsabilidad de lo que se ha consumido es responsabilidad del consumidor y esta es también una de las principales razones por las que Kafka tiene una escalabilidad horizontal tan grande.
El uso de la API de consumidor de alto nivel lo hará automáticamente al confirmar las compensaciones consumidas en Zookeeper (o un tema especial de Kafka está utilizando una opción de configuración más reciente para realizar un seguimiento de los mensajes consumidos).
La API de consumidor simple lo hace lidiar con cómo y dónde realizar un seguimiento de los mensajes consumidos usted mismo.
La purga de mensajes en Kafka se realiza automáticamente especificando un tiempo de retención para un tema o definiendo una cuota de disco para él, por lo que para su caso de un archivo de 5 GB, este archivo se eliminará después de que haya transcurrido el período de retención que defina, independientemente de si se ha consumido o no
Según mi conocimiento, puede
eliminar
los datos consumidos de los registros al reducir el tiempo de almacenamiento.
El tiempo predeterminado para el registro se establece en
168 horas
y luego los Datos se eliminan automáticamente del
Kafka-Topic
que creó.
Entonces, mi sugerencia es reducir el ir al
server.properties
que se encuentra en la carpeta de configuración y cambiar el
168
a un tiempo mínimo.
por lo tanto, no hay datos después de la cantidad de tiempo específica que ha establecido para las
horas log.retention.ho.Así que
su problema se resolverá.
log.retention.hours = 168
Sigue codificando