如何处理卡夫卡消费者失败

时间:2020-10-29 13:39:48

标签: apache-kafka

我正在尝试了解如何处理失败的消费者记录。如何 我们知道记录失败。我看到的是当记录 使用者中的处理失败,运行时异常使用者为 继续重试。但是当下一条记录可供处理时 正在提交最新记录的偏移量,这是预期的。我的 质疑我们如何知道失败的记录。在较早的消息传递中 系统失败的消息回滚到队列并停止处理 那里。然后我们知道队列已关闭,我们可以采取行动。

我可以将失败的记录记录到某些db表中,但是如果记录失败,会发生什么呢? 我可以将失败转移到错误/死信队列,如果再次失败,又会发生什么?

我正在使用带有弹簧靴2.3.4的kafka 2.6。任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

听起来像您需要禁用自动提交,并在达到“已成功处理”的范围时自己手动提交偏移量。如果您包括诸如数据库之类的外部进程,那么您还需要增加Kafka客户端超时,这样它就不会在等待错误日志记录/处理时认为使用者已经死了。