2015-09-02 3 views
0

Я установил rabbitmq-server и amqp-tools. Мой потребитель начинает нормально с этим параметром:rabbitMQ не завершает мои сообщения

# amqp-consume -s 127.0.0.1:5672 -e "amq.topic" --vhost "/" -r "worker1" --username=guest --password=guest -d onmessage.sh 
Server provided queue name: amq.gen-gzncPpcYr0f1s8HfI-A5cW 

Мой издатель может отправлять сообщения и я могу видеть его на консоли и веб-браузер:

# amqp-publish -s 127.0.0.1:5672 -e "amq.topic" -r "worker1" --vhost="/" --username=guest --password=guest -b "this is a test message" 
# rabbitmqctl list_queuesListing queues ... 
amq.gen-gzncPpcYr0f1s8HfI-A5cW 3 
...done. 

сумы onmessage.sh только чтения строки и эхо на экране. Но потребитель не комментирует сообщения. Зачем?

ответ

1

вам необходимо объявить очередь потребителю. Вы должны добавить:

-q "my_queue" 

так:

# amqp-consume -s 127.0.0.1:5672 -e "amq.topic" -q "my_queue" --vhost "/" -r "worker1" --username=guest --password=guest -d onmessage.sh 

-е объявляет обмен.

+0

не нужно. RabbitMQ создает свою очередь в очереди (amq.gen-gzncPpcYr0f1s8HfI-A5cW). Я решил использовать/bin/bash перед скриптом. –

+0

в соответствии с вашим примером - похоже, что он работает в любом случае .. – Udy

Смежные вопросы