Кафка: как повторно использовать незафиксированное / не подтвержденное сообщение

Мы используем стратегию ручной фиксации. Мы настроили bean-компонент, который фиксирует все успешно использованные сообщения. Мы пытаемся добавить логику для повторного использования неподтвержденных сообщений. Мы сталкиваемся с проблемой, что одно и то же сообщение потребляется, но временной интервал для повторного использования неодинаков. Иногда восстанавливается быстро, но иногда занимает несколько часов.

Как мы можем убедиться, что незафиксированные сообщения будут обработаны в течение заданного времени.

Ну, я не уверен, зачем вам повторно использовать сообщение или зачем вам нужно использовать неподтвержденное сообщение? Если брокер kafka настроен с ack=all или ack=leader, потребитель будет использовать только подтвержденные сообщения. Я хочу сказать, что, возможно, есть лучшее решение.

JR ibkr 19.02.2019 17:56
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
1
388
1

Ответы 1

Вы можете выполнить операцию seek() над Consumer, чтобы сбросить его до определенного смещения.

Другие вопросы по теме