问题描述
我编写了一个MQTT客户端程序,该程序在计算机(计算机1)上运行。 MQTT客户端程序以QoS = 1连接到MQTT代理,并定期将数据发布到代理。我使用Mosquito实用程序从另一台计算机(计算机2)订阅了Broker(Qos = 1)。我发现发布到Broker的数据将延迟大约3秒钟交付给发布者。延迟的时间太长。我检查了代码,发现3秒钟的延迟时间来自read_packet(),它是从Broker中回读确认的。为什么会有这么长的延迟时间?我该如何解决?经纪人(MQTT服务器)由我的同事管理。如果是中间人,我可以要求他们提供帮助。但是我需要知道什么可能是麻烦源,以便与他们进行核对。
我可以通过在计算机1上查看来自MQTT客户端程序的调试消息来确认从Broker回读确认时发生的延迟。对于Qos = 1,客户端必须在发送(发布)数据包后回读确认。我发现在发送数据包和回读确认之间有3秒的延迟时间。当然,我还发现了Mosquito_sub实用程序的显示延迟。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)