0

如何从动物园管理员那里获得最后的偏移时间?使用storm spout从kafka读取消息时。上下文:Kafka不断获取消息,consumer读取一段时间后由于任何原因关闭,然后consumer只读取最新消息但不从最后一个偏移读取

4

1 回答 1

2

消费者读了一会儿,然后由于任何原因关闭

不确定您到底指的是什么,因为除非明确停止,否则消费者应该无限运行。

现在假设您使用的是storm的KafkaSpout实现,有一个名为forceStartOffsetTimewhich is used的配置to force the spout to rewind to a previous offset。使用方法如下

    spoutConfig.forceStartOffsetTime(-2);

如文档页面所示

它将选择围绕该时间戳写入的最新偏移量来开始消费。您可以通过传入 -1 强制 spout 始终从最新的偏移量开始,也可以通过传入 -2 强制它从最早的偏移量开始。

因此将其设置为 -2 将始终强制它从一开始就读取您正在使用的配置是什么,如果您可以发布一些代码会很棒

于 2013-12-06T10:33:46.167 回答