2016-02-09 4 views
1

У меня проблема с самым тривиальным шагом в Qpid Proton. Вот моя установкаQIP-версия протонной CPP с обменом

qpid-config -a localhost:5672 add exchange test.announce 
qpid-config -a localhost:5672 add queue test.announce.q 
qpid-config -a localhost:5672 bind test.announce test.announce.q 

(ни одна клавиша маршрутизации не указано специально) Когда я запускаю сервер протонной CPP и клиент со следующими

./server -a amqp://127.0.0.1:5672/test.announce 
./client -a amqp://127.0.0.1:5672/test.announce.q 

клиент не может общаться с сервером. Но использование автономных инструментов qpid

qpid-receive -a test.announce.q -b 127.0.0.1:5672 -t -f 
echo "hello world!!!"|qpid-send -b 127.0.0.1:5672 -a test.announce -m 1 --content-stdin 

это работает как ожидалось. Запуск qpid-send против сервера Proton также работает нормально. Я ничего не вижу в API-интерфейсе Proton, который я могу обновить, и не знаю, что мне здесь не хватает. Код сервера и клиента в значительной степени идентичен тому, что находится в 0.12 моментальном снимке. Есть предположения?

ответ

1

Я осознал свою ошибку. Концепция сервера и клиента в AMQP выглядит несколько противоположной. Я изменил приложения так, что клиент «отправил» на обмен, пока сервер слушал в очереди, и все сработало.

./server -a amqp://127.0.0.1:5672/test.announce.q 
./client -a amqp://127.0.0.1:5672/test.announce