我有一个蚊子设置max_inflight_messages=1
(用于按订单交付)。连接到代理的客户端能够接收消息,但是在它发布消息后QoS=2
,它不再接收消息。在将默认值更改为 1 后观察到此行为max_inflight_messages
(以前,客户端能够在发布后接收消息)
这也使用 , 进行了测试subscribe("/#")
,以确保它不是订阅错误。我做错了什么,还是这是预期的行为max_inflight_messages=1
?
谢谢您的帮助。
山姆
做了一个快速测试,看起来这可能是 mosquitto 中的一个错误。如果您在http://bugs.launchpad.net/mosquitto提交错误报告,那么它将确保问题不会被遗忘。
同时,您可以使用大于 1 的 max_inflight_messages。即使 max_inflight_messages 设置>1,按顺序交付实际上也非常稳健。仅当您的客户端以特别不稳定的方式丢弃消息时才可能出现问题,只有当您的网络经常断开连接并且客户端正在做奇怪的事情时才会发生这种情况。
更新:这在 1.2.2 版中已修复。