How does a consumer work in Kafka?

Your thoughts?


Consumers work in groups to read data from Kafka topics. Consumers within a group are responsible for reading a portion of the messages (partitions) so that messages can be consumed in parallel.

Consumers "pull" messages from Kafka. Kafka just sits there while consumer applications simultaneously read the same data.

When a message is consumed in Kafka, it doesn't disappear. Instead, it remains in a linear commit log of messages. The consumers reading from this commit log keep track of where they are via the "offset". If a consumer goes down, it can pick up right where it left off via the offset recording.


Consumers consume messages from topics...