Как получить последнее время смещения от zookeeper? при чтении сообщений от кафки с использованием штормового желоба. Контекст: Кафка получает сообщения непрерывно, потребитель читает на некоторое время, а затем выключается из-за какой-либо причине, а затем потребитель читает только самое последнее сообщение, но не читает от последнего смещения чтенияПолучение сообщений от kafka с помощью шторма
ответ
потребитель читает на некоторое время а затем отключается по какой-либо причине.
Не уверен, что именно вы имеете в виду, поскольку потребитель должен работать бесконечно, если он не остановлен явно.
Теперь, предположим, что вы используете реализацию KafkaSpout шторма, существует конфигурация под названием forceStartOffsetTime
, которая используется to force the spout to rewind to a previous offset
. Способ использовать его следующим образом
spoutConfig.forceStartOffsetTime(-2);
Как видно на странице док
Он будет выбирать самый последний сдвиг написано вокруг этой метки времени, чтобы начать потреблять. Вы можете заставить носик всегда начинать с последнего смещения, пройдя в -1, и вы можете заставить его начать с самого раннего смещения, пройдя в -2.
поэтому установка его -2 всегда заставит его читать с самого начала , что конфигурация, которую вы используете, было бы здорово, если бы вы могли бы разместить код
, но мне не нужно с самого начала или последнее сообщение. установка -1 позволяет мне потреблять с того времени, когда потребитель не потреблял или последнее, что является текущим временным штампом –
Он выберет последнее смещение, написанное вокруг этой метки времени, чтобы начать потреблять (* от doc *) – user2720864
означает, что -1 заставит его для использования с последнего – user2720864