Задержанные сообщения не появляются в очереди при использовании rabbitmq_delayed_message_exchange
Я пытался использовать этот плагин, и он показался мне довольно простым и эффективным. Мне удалось создать обмен, но когда я публикую запрос, если есть ненулевое значение x-delay, я не могу видеть, что сообщение передается в очередь (работает нормально с x-delay, равным 0)
Я использую pika и python; следующая команда была использована для создания обмена:
channel.exchange_declare( exchange="central_exchange", exchange_type='x-delayed-message', passive=False, durable=False, auto_delete=False, internal=False, arguments=args )
для публикации сообщения:
channel.basic_publish(
exchange="central_exchange",
routing_key="my_queue",
body=message,
properties=pika.BasicProperties(headers={"x-delay": 5000})
)
Спасибо за вашу помощь!
1 ответ
Глядя на логи, плагин пытается запустить файлы erlang, которые выдают ошибки. Кажется, этот плагин поддерживает только Erlang/OTP 18.0 или более поздней версии. Автономная версия rabbitmq была в комплекте с erlang 17.5. пришлось установить его используя доморощенный, обновленный эрланг, теперь работающий как шарм!!
Все спасибо michaelklishin (автор плагина) за помощь:)