@raiboon

Как сделать exponential backoff в rabbitmq?

Не могу найти в апи, как сделать отложенный retry.

Вот получил сообщение, обработать его не получилось, делаю nack и то же сообщения сразу поступает снова.

Но это ж хреновое поведение по-умолчанию. Должен же быть способ настроить таймауты.
  • Вопрос задан
  • 163 просмотра
Пригласить эксперта
Ответы на вопрос 2
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Казалось бы при чем тут rabbimq? Он пассивный и сам ни к кому не обращается. Ему неоткуда иметь exponential back-off или retry. Это FIFO queue с фичами. Сообщение должно или быть успешно обработанным или быть признано не обработанным, но в любом случае быть или убрано из очереди или оставаться там до обработки
Ответ написан
@yarkin
Если очень надо, чтобы "таймауты" делал RabbitMQ, то в ограниченной форме на помощь может придти расширение DLX, но нужны ещё дополнительные очереди для отстойников. RabbitMQ это универсальная очередь, он не может решать микро-требования для каждого варианта использования.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы