首页 > 解决方案 > 使用spring boot kafka消费者客户端存储消费者偏移量的理想方法是什么?

问题描述

我有春季卡夫卡消费者应用程序。该应用程序充当通道,通过它轮询来自 kafka 代理的消息并发送到 IBM MQ。如果发生故障,存储偏移量的最佳/最简单方法是什么?

标签: spring-bootapache-kafkakafka-consumer-apispring-kafka

解决方案


最简单的方法是使用将偏移量存储在 kafka 本身中的默认机制。

如果添加SeekToCurrentErrorHandler,则容器将继续重新传递侦听器中失败的记录,默认最多 10 次,但可以配置为无限重试。

如果您添加有状态重试,则侦听器适配器可以在每次传递尝试之间添加延迟。

请参阅有状态重试

ackOnError应设置为false


推荐阅读