Принудительно RabbitMQ прекратить получать любые сообщения - PullRequest
0 голосов
/ 01 ноября 2018

Как мы можем заставить RabbitMQ прекратить получать какие-либо сообщения в течение определенного времени?

Это должно быть как можно быстрее, поскольку мы хотим сделать это между тестами.

Мы опробовали политики, но не нашли подходящих для этого вопроса. Также rabbitmqctl остановка и запуск будет работать, но это довольно медленно.

Справочная информация. У нас есть автоматизированная среда сквозного тестирования с RabbitMQ и множеством сервисов. Между тестами мы хотим сбросить среду с очисткой всех хранилищ и кешей, а также очередей. Проблема в том, что в промежуточном состоянии сообщения могут заполнять данные в уже очищенном сервисе. Поэтому мы хотим сначала остановить прием сообщений RabbitMQ, затем очистить все очереди, а затем очистить все хранилища и кэши всех служб.

1 Ответ

0 голосов
/ 01 ноября 2018

Я установил политику

max-length-bytes:   1
overflow:   reject-publish

для всех очередей и обменов. Кажется, что работает, кролик MQ не доставляет больше сообщений.

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