因學習MQTT,故需使用到mosquitto進行測試開發,故此記錄此篇
mosquitto 基礎
What?
一個開源broker,及代理工具
Why?
完全兼容了MQTT 3.1和MQTT 3.1.1,包含服務端和客戶端
安裝過程
步驟1:mosquitto下載地址
步驟2:進入對應的安裝目錄 - 這裏的標紅區域爲OpenSSL(開放源代碼的軟件庫包),部分開發人員可能會有缺失OpenSSL,如果遇到這樣的問題就需要根據 Readme 幫助文檔操作一番了(我是2020年下載mosquitto工具,都是安裝的默認配置,未操作OpenSSL,最後也可正常使用 !)
啓動方式
方式1:通過mosquitto.exe的Gui雙擊啓動
方式2:cmd命令進入mosquitto目錄,輸入 mosquitto -d -v ( mosquitto -v )啓動代理端
方式3:通過管理 - 服務 - Mosquitto Broker 開啓服務
步驟1:我的電腦 - 右鍵 - 管理
步驟2:服務 - 開啓Mosquitto Broker服務
使用流程
務必注意:
1.只有mosquitto安裝成功,且服務已啓動才能正常進行使用此工具
2.訂閱主題和發佈消息均需在一個獨立的cmd窗口下
3.關於任何命令操作,都需要在mosquitto目錄下執行,不然無法識別mosquitto命令
訂閱主題
訂閱行爲作爲消費者的角色,可以擁有多個,但是對應着在這裏測試的話,則需開啓多個cmd訂閱窗口
mosquitto_sub -d -v -t test訂閱主題爲test的消息
【-t】指定主題,此處爲test
【-v】打印更多的調試信息
注:這裏訂閱失敗是因爲服務未開啓,並非主題少個t … 主要不想截圖了… 所以直接在這裏進行聲明咯~
發佈內容
再次重申,這裏需要開啓一個新的cmd命令窗口進行信息發佈
mosquitto_pub -d -t test -m hello_baby
【-t】指定主題
【-m】指定消息內容
使用成功
一切正常的話,可以看到訂閱端窗口收到了主題爲test的hello_baby消息
或遇問題
1.windows_mosquitto.exe閃退
方式1:計算機–>管理–>服務–>找到Mosquitto Broker,若爲啓動狀態,點擊“停止”,然後右鍵屬性設置爲手動啓動
方式2:命令行查詢:netstat -ano | findstr 1883
殺掉進程的命令:taskkill /pid 31196 /f
其中 /f 表示強制關閉該進程,31196 是查詢結果顯示的pid號(pid號一般爲最末尾的一串數字)
借鑑文章: