场景
SpringBoot整合MQTT服务器实现消息的发送与订阅(推送消息与接收推送):
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/112394731
在上面使用SpringBoot进行连接MQTT服务器进行消息的发送与订阅的基础上。
在将SpringBoot项目打包成jar包并部署在服务器上后,本地再启动SpringBoot项目时后台
一直输出掉线重连。
注:
博客:
https://blog.csdn.net/badao_liumang_qizhi
关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。
实现
经过思考,考虑到每个客户端连接时会设置一个ClientID,而这个客户端id是唯一的。
clientID全球唯一,两个相同的clientID同时连接IoT套件的话,先连接的那个会被强制断开。
所以本地的代码和服务器上的代码是使用的相同的ClientID,并且是连接的同一个MQTT服务器。
这就导致了频繁重连。
之前的clientID的设置在配置文件application.yml中
然后在代码中读取配置文件的clientID,将设置clientID的地方改为每次生成随机的字符串,但是记住长度不能太长,不能超过23位。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/136419.html