librdkafka 常见问题FAQ

1,++ librdkafka一个消费者实例分配了所有分区不提交位点,在发生rebalance后,会重新从头消费数据吗

在发生重新平衡(rebalance)后,消费者会从哪里开始消费数据取决于消费者组的配置,特别是 auto.offset.reset 配置项。

关键配置项:auto.offset.reset
auto.offset.reset 决定了在没有有效的消费位点时,消费者从哪里开始消费。这个配置项有两个常见的值:

earliest:从分区的最早消息开始消费。
latest:从分区的最新消息开始消费。
具体行为
没有提交位点且 auto.offset.reset 为 earliest:

在发生重新平衡后,消费者会从分区的最早消息开始消费。这意味着会重新从头开始消费所有消息。
没有提交位点且 auto.offset.reset 为 latest:

在发生重新平衡后,消费者会从分区的最新消息开始消费。这意味着只会消费重新平衡后产生的新消息。

===========
正常rebalance后,会从分区上次提交的位点处开始消费
View Code

 

posted @ 2024-07-12 15:47  郭流水  阅读(2)  评论(0编辑  收藏  举报