Kafka消费者端故障处理和重新投递

shi*_*404 3 apache-kafka kafka-consumer-api spring-kafka

如果某些消息在 kafka 中没有被确认会发生什么?假设我正在同时消费消息。并且一位消费者无法处理 offset=20 的消息并且没有发回 Ack。但是其他具有 offset=21 的消息已被消耗并返回。我怎样才能只重播 20 个?

我是否需要将消息放入 DLQ 并再次消费?如果失败也发生在那里怎么办?

我对保证交货有点困惑。

Gar*_*ell 5

如果您使用组管理,其中 kafka 分配分区,则不会发生 - 一个分区仅分配给一个线程。如果您有更多线程,则它们每个都从不同的分区消耗,每个分区都有自己的偏移量。