今天使用RabbitMQ做數據下發操作,當在發送端聲明了Exchange后
打開RabbitMQ的管理控制台,可以查看,其中已經創建了Exchange
但並沒有Queue
接着運行接收端,發現以下錯誤,即406錯誤
錯誤信息是
The AMQP operation was interrupted: AMQP close-reason, initiated by Peer, code=406, text="PRECONDITION_FAILED - inequivalent arg 'durable' for exchange 'UpdateData.*' in vhost '/': received 'false' but current is 'true'", classId=40, methodId=10, cause=
錯誤的原因是, 當在發送端與接收端都聲明同一個Exchange時(當然會有先后順序),第一次創建Exchange沒有問題,但第二次創建會有問題
解決方法是,在發送端暫時不需要聲明Exchange,只在接收端聲明Exchange就可以了
參考地址:https://blog.csdn.net/yy756127197/article/details/78142957
參考地址:https://blog.csdn.net/tuoxinquyu/article/details/81324720