Kafka初始offset的确定

12月 26, 2016 |

如果kafka的topic中已经累积了很多消息,这时新组的第一个消费者开始消费该topic中的消息,这时消费者是从topic的头开始处理,还是从topic的的尾开始处理呢,分三种情况:
使用老的消费者接口且自动确定初始offset:
auto.offset.reset属性决定初始offset。默认值为largest,表示从topic的的尾开始处理,可选的值还有smallest,表示从topic的头开始处理,设置为其他值时报异常。
使用新的消费者接口且自动确定初始offset:
auto.offset.reset属性决定初始offset。默认值为latest,表示从topic的的尾开始处理,可选的值还有earliest,表示从topic的头开始处理,,设置为none且以前没有offset时报异常。设置为其他值时直接报异常
手动指定offset:
KafkaConsumer.seek方法可以将offset置为任意的值

Posted in: Kafka

Comments are closed.