Spring Kafka消费者在运行时对特定偏移进行轮询。

问题描述 投票:0回答:1

在我们的kafka消费者中使用spring kafka时。根据我的业务需求,我需要在处理同一批记录失败的情况下,再次轮询回同一批记录。根据我的业务需求,我需要在处理同一批记录时,再次轮询回同一批记录。https:/kafka.apache.org22javadocorgapachekafkaclientsconsumerKafkaConsumer.html。"抵消和消费者地位" 说,Kafka为一个分区中的每条记录维护一个数字偏移量。这个偏移量作为该分区中记录的唯一标识符,同时也表示消费者在该分区中的位置。例如,一个处于位置5的消费者已经消费了偏移量为0到4的记录,下一步将接收偏移量为5的记录。实际上,与消费者的用户相关的位置有两个概念:-。

  • 消费者的位置给出了下一个将被发出的记录的偏移量。它将比消费者在该分区中看到的最高偏移量大一个。每次消费者在调用poll(Duration)中收到消息时,它都会自动前进。

  • 已提交的位置是最后一个被安全存储的偏移量。如果进程失败并重新启动,这就是消费者将恢复到的偏移。消费者可以定期自动提交偏移量,也可以选择通过调用提交API(如commitSync和commitAsync)来手动控制这个提交位置。

在我的案例中,我想控制第一个位置。有什么方法可以做到这一点吗?

kafka-consumer-api spring-kafka
1个回答
0
投票

SeekToCurrentErrorHandler 将重新定位消费者,这样如果监听器抛出异常,失败的记录将被重新交付。

实现 消费者搜索意识 在启动过程中寻求开始。

© www.soinside.com 2019 - 2024. All rights reserved.