Kafka基础(三):消费者相关知识汇总
版本
HDP:3.0.1.0
Kafka:2.11-1.1.1
三、消息消费
详情可访问:《kafka-message-consume.md》
四、位移提交
详情可访问:《how-to-commit-offset.md》
四、从特定偏移量处开始处理记录
到目前为止,我们知道消息的拉取是根据 poll() 方法中的逻辑来处理的,这个 poll() 方法中的逻辑对于普通的开发人员而言是一个黑盒,无法精确地掌控其消费的具体位置。有的时候,我们需要一种更细粒度的掌控,可以让我们从特定的位移处开始拉取消息,而 KafkaConsumer 中的 seek() 方法正好提供了这个功能,让我们得以追前消费或回溯消费。seek() 方法的具体定义如下:
1 | public void seek(TopicPartition partition, long offset) |
seek() 方法中的参数 partition 表示分区,而 offset 参数用来指定从分区的哪个位置开始消费。 seek() 方法只能重置消费者分配到的分区的消费位置,而分区的分配是在 poll() 方法的调用过程中实现的,也就是说,在执行 seek() 方法之前需要先执行一次 poll() 方法,等到分配到分区之后才可以重置消费位置。
点关注,不迷路
好了各位,以上就是这篇文章的全部内容了,能看到这里的人呀,都是人才。
白嫖不好,创作不易。各位的支持和认可,就是我创作的最大动力,我们下篇文章见!
如果本篇博客有任何错误,请批评指教,不胜感激 !
原文作者: create17
原文链接: https://841809077.github.io/2019/06/24/Kafka/Kafka-consumer.html
版权声明: 转载请注明出处(码字不易,请保留作者署名及链接,谢谢配合!)