Метод, аннотированный слушателем Spring Kafka, не получает сообщение, если предыдущая обработка сообщения заблокирована

#spring-boot #spring-kafka

#spring-boot #spring-kafka

Вопрос:

В моем проекте я использую Spring Kafka listener для получения сообщений от Kafka. Я сомневаюсь, что если код метода consume по какой-либо причине будет заблокирован и никогда не будет возвращен обратно, в этом случае сможет ли этот слушатель получать новые сообщения и продолжать работу дальше или он будет повешен? В моем случае, похоже, что Kafka listener также заблокирован и не обрабатывает дальнейшие сообщения, даже другой потребитель той же группы также не получает сообщения.

Ответ №1:

Нет; вы не получите больше записей, пока поток заблокирован, если только параллелизм не равен> 1 и не существует как минимум такого количества разделов. Даже тогда вы больше не будете получать сообщения для разделов, назначенных заблокированному потребителю.