2014-11-05 75 views
1

今天,我試圖模擬一個場景,在駱駝「to」標籤中,我提供了拼寫錯誤的隊列名稱(不存在)Camel或RabbitMq而不是拋出異常返回繼續完成路線流程。 Intrgigued我編寫了一個示例程序,使用「channel.basicPublish」發送錯誤的隊列名稱的消息。我從來沒有從兔子mq客戶端拋出任何異常。駱駝與rabbitmq - Misspelt隊列名稱

但是如果交換名稱錯誤,我確實得到了一個異常。這是預期的行爲? 我試着添加return listener,確認listener,異常處理程序等等,但是沒有一個被調用。 任何線索?

回答

1

消息發佈到交換,所以當發佈消息時交換必須在那裏。在發佈時,RabbitMQ不關心隊列,除非提供了mandatory標誌,或者通道處於確認模式。