问题摘要:
连接到 test.mosquitto.org 或 iot.eclipse.org 并保持 5 分钟以上的活动状态,一切似乎都按预期工作。
连接到我的代理(都在 Azure 托管的 VM 上 - 一个是 Mosquitto,一个是 Emqttd),如果保持活动时间超过 5 分钟,我的客户端不会发送 ping。他们只是死了。经纪人最终会因为没有 ping 而断开它们的连接。我没有使用 Azure 负载平衡器,而是直接连接到 VM)。
问题是,如果它是通过蜂窝网络连接的设备不知道它已断开连接(不知道为什么?)
通过以太网,它会按照它应该的方式重新连接自己。
不确定 Azure VM 是否有什么独特之处导致了我的断开连接/超时问题以及更长的保活时间?
最后,如果我使用 2 分钟或更短的 keep-alive,一切正常。