我读到kafka提供了一个客户机库,它允许通过保存zookeeper中读取的最后一个偏移量来进行恢复(不能100%确定它存储在哪里)。
有没有可能对萨拉玛的消费者也这么做?
假设我一直读到偏移量550,我的消费者崩溃了5分钟,我们现在在偏移量700,但我想从偏移量550恢复消费。
不用我一个人拯救国家,这可能吗?我想是的,但我不明白怎么回事。
我找到了 sarama.OffsetNewest/Oldest
但那不是我要找的。。。
我读到kafka提供了一个客户机库,它允许通过保存zookeeper中读取的最后一个偏移量来进行恢复(不能100%确定它存储在哪里)。
有没有可能对萨拉玛的消费者也这么做?
假设我一直读到偏移量550,我的消费者崩溃了5分钟,我们现在在偏移量700,但我想从偏移量550恢复消费。
不用我一个人拯救国家,这可能吗?我想是的,但我不明白怎么回事。
我找到了 sarama.OffsetNewest/Oldest
但那不是我要找的。。。
1条答案
按热度按时间prdp8dxp1#
Kafka消费者过去在zookeeper中存储补偿,但现在他们直接在Kafka中存储补偿。参见Kafka文档中的消费者部分。
sarama很好地处理了这个问题,sarama的消费者将默认地在kafka中提交(存储)补偿。
看看萨拉玛消费者的例子。这个例子最初是从主题的末尾开始的,但一旦重新启动,它将从最后一个位置重新启动。