我读过 kafka 提供了一个消费者客户端库,该库允许通过保存在 zookeeper 中读取的最后一个偏移量来恢复(不是 100% 确定它的存储位置)。
是否可以对 Sarama 消费者做同样的事情?
假设我正在阅读直到偏移量 550,我的消费者崩溃了 5 分钟,我们现在处于偏移量 700,但我想从偏移量 550 恢复消费。
不必自己拯救国家,这可能吗?我会假设它确实如此,但我不明白如何。
我找到sarama.OffsetNewest/Oldest
了,但这不是我要找的...
我读过 kafka 提供了一个消费者客户端库,该库允许通过保存在 zookeeper 中读取的最后一个偏移量来恢复(不是 100% 确定它的存储位置)。
是否可以对 Sarama 消费者做同样的事情?
假设我正在阅读直到偏移量 550,我的消费者崩溃了 5 分钟,我们现在处于偏移量 700,但我想从偏移量 550 恢复消费。
不必自己拯救国家,这可能吗?我会假设它确实如此,但我不明白如何。
我找到sarama.OffsetNewest/Oldest
了,但这不是我要找的...
Kafka 消费者过去将偏移量存储在 Zookeeper 中,但现在他们直接将它们存储在 Kafka 中。请参阅 Kafka 文档中的消费者部分。
Sarama 处理得很好,默认情况下,Sarama 消费者将在 Kafka 中提交(存储)偏移量。
看看 Sarama Consumer 的例子。最初,此示例从主题的末尾开始,但在重新启动时,它将从最后一个位置重新开始。