发布QoS = 2后,mosquitto客户端不再接收消息(max_inflight_messages = 1)

时间:2013-10-09 08:24:24

标签: python mqtt mosquitto

我有max_inflight_messages=1的蚊子设置(用于按顺序递送)。连接到代理的客户端能够接收消息,但在发布带有QoS=2的消息后,它不再接收消息。将max_inflight_messages更改为默认值之后观察到此行为(之前,客户端能够在发布后接收消息)

还使用subscribe("/#")对此进行了测试,以确保它不是订阅错误。我做错了什么,或者这是max_inflight_messages=1的预期行为?

感谢您的帮助。

萨姆

1 个答案:

答案 0 :(得分:0)

经过快速测试后,看起来这可能是蚊子中的一个错误。如果您在http://bugs.launchpad.net/mosquitto提交错误报告,那么它将确保问题不会被遗忘。

与此同时,你可以使用大于1的max_inflight_messages。即使max_inflight_messages设置为> 1,按顺序交付实际上也非常强大。如果您的客户端以特别不稳定的方式丢弃消息,这可能只是一个问题,如果您的网络经常断开连接并且客户端正在做奇怪的事情,那么这种情况很可能会发生。

更新:对于1.2.2版本已修复。