RabbitMQ: переместить сообщения с истекшим сроком в собственный dlq? - PullRequest
1 голос
/ 28 февраля 2020

Мы отправляем сообщения amqp в rabbitMQ и устанавливаем свойство message-ttl. Если сообщения истекли, они перемещаются в определенный DLQ.

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

1 Ответ

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

Да, это возможно.

Вам необходимо установить обмен мертвыми буквами в своей очереди и настроить ключ маршрутизации сообщений для изменения по истечении срока действия сообщений. Для этого используйте аргумент x-dead-letter-routing-key.

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

Тогда сообщения с истекшим сроком будут отправлено RabbitMQ в DLX, который направит их в очередь, которую вы явно определили только для сообщений с истекшим сроком действия.

Подробнее об этом здесь: https://www.rabbitmq.com/dlx.html.

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