Kafka初始offset的确定

Dec 26, 2016 | | Say something

如果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

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">