使用轮询方式消费 Kafka Message
Consume Kafka Message using poll mode
我是 Kafka 的新手,我使用的是 Kafka 1.0。
我使用 pull 模式读取 kafka 消息,也就是说,我定期 poll()
ing Kafka 主题以获取新消息,但我没有将偏移量写回 Kafka。
请问kafka怎么知道我消费了哪些offset或者Kafka是通过什么机制记住进度的(Kafka offset)
每个消费者组都维护每个主题分区的偏移量。由于 v0.9
每个消费者组的提交偏移信息存储在一个名为(默认)__consumer_offsets
的内部主题中(在 v0.9 之前,此信息存储在 Zookeeper 上)。当偏移量管理器收到 OffsetCommitRequest
时,它将请求附加到名为 __consumer_offsets
的特殊压缩 Kafka 主题。最后,只有当偏移量主题的所有副本都收到偏移量时,偏移量管理器才会向消费者发送成功的偏移量提交响应。
我是 Kafka 的新手,我使用的是 Kafka 1.0。
我使用 pull 模式读取 kafka 消息,也就是说,我定期 poll()
ing Kafka 主题以获取新消息,但我没有将偏移量写回 Kafka。
请问kafka怎么知道我消费了哪些offset或者Kafka是通过什么机制记住进度的(Kafka offset)
每个消费者组都维护每个主题分区的偏移量。由于 v0.9
每个消费者组的提交偏移信息存储在一个名为(默认)__consumer_offsets
的内部主题中(在 v0.9 之前,此信息存储在 Zookeeper 上)。当偏移量管理器收到 OffsetCommitRequest
时,它将请求附加到名为 __consumer_offsets
的特殊压缩 Kafka 主题。最后,只有当偏移量主题的所有副本都收到偏移量时,偏移量管理器才会向消费者发送成功的偏移量提交响应。