2013-10-09 48 views
1

我有一個帶有max_inflight_messages=1(用於按順序發送)的mosquitto設置。連接到代理的客戶端能夠接收消息,但是在它發佈消息QoS=2後,它不再接收消息。從默認值改變max_inflight_messages到1後,觀察到這種行爲mosquitto客戶端在發佈QoS = 2(max_inflight_messages = 1)後不再接收消息

這也與subscribe("/#")測試(以前,繼發佈客戶能夠接收消息),以確保它不是一個訂閱錯誤。我做錯了什麼,或者這是max_inflight_messages=1的預期行爲?

謝謝你的幫助。

山姆

回答

0

做完一個快速的測試,它看起來像這可能是在mosquitto的錯誤。如果您在http://bugs.launchpad.net/mosquitto提交錯誤報告,那麼它會確保問題不會被遺忘。

與此同時,您可以使用大於1的max_inflight_messages。即使max_inflight_messages設置> 1,按序傳送實際上也非常健壯。如果你的客戶以一種特別不穩定的方式丟棄消息,這可能只是一個問題,而這種情況只有在你的網絡經常斷開連接並且客戶做出奇怪的事情時纔會發生。

更新:這是固定的版本1.2.2。