當前位置:
首頁 >
前端技术
> javascript
>内容正文
javascript
SpringBoot连接MQTT服务器时因ClintID重复导致频繁掉线重连
生活随笔
收集整理的這篇文章主要介紹了
SpringBoot连接MQTT服务器时因ClintID重复导致频繁掉线重连
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
場景
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位。
總結
以上是生活随笔為你收集整理的SpringBoot连接MQTT服务器时因ClintID重复导致频繁掉线重连的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 信息系统项目管理师-信息系统综合测试与管
- 下一篇: SpringBoot连接MQTT进行发布