Как запустить потребитель кафки с ручным опросом - PullRequest
1 голос
/ 27 марта 2020

Я должен создать потребителя кафки как часть моего приложения. Но из-за варианта использования я должен опрашивать вручную. Потому что всякий раз, когда опрос не возвращает никаких сообщений от topi c, я должен предпринять определенные шаги. Это я не могу сделать с помощью Spring Kafka, поскольку он вызывает только при получении сообщения.

Есть ли способ запустить этот потребитель, когда приложение запускается? Я думал об использовании CommandLineRunner, но он не выглядит чистым ( Есть ли проблемы с этим способом запуска бесконечного l oop в приложении Spring Boot? )

Или, если я использую Spring Kafka, есть ли способ узнать, если конкретный раздел или topi c не имеет событий

Я мог бы подумать о запуске этого в отдельном потоке или с помощью CommandLineRunner. Есть предложения по лучшему решению?

1 Ответ

0 голосов
/ 27 марта 2020

Простое решение. Не используйте Spring-Kafka или @KafkaListener.

Создайте простой KafkaConsumer объект самостоятельно. Звоните poll(). Отметьте count()

...