Как проверить, пуста ли Кафка с помощью Spring Kafka - PullRequest
1 голос
/ 30 марта 2019

Когда я перезапускаю свое приложение, мне нужно обрабатывать оставшиеся сообщения в Kafka до тех пор, пока оно не станет пустым, а затем мое приложение должно продолжать работать в обычном режиме.Моя проблема в том, как проверить, пуста ли Кафка.Я использую Spring Kafka.

Спасибо

1 Ответ

0 голосов
/ 30 марта 2019

Установите свойство контейнера idleEventInterval, и вы сможете прослушивать ListenerContainerIdleEvents, который будет публиковаться каждый раз, когда в течение этого интервала не будет получено никаких записей - см. документацию .

Несмотря на свою эффективность, одной из проблем асинхронных потребителей является обнаружение их простоя.Возможно, вы захотите предпринять какое-то действие, если в течение некоторого периода времени не поступит никаких сообщений.

Вы можете настроить контейнер слушателя на публикацию ListenerContainerIdleEvent, когда через некоторое время не будет доставлено сообщений.Во время простоя контейнера событие публикуется каждые миллисекунды idleEventInterval.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...