關于Mosquitto配置的資料網上還是有幾篇的,但是看來看去,基本上都是基于Linux?;赪indow的鳳毛麟角,看上去貌似配置的東西相差不大,實操過程中真的煩透了,配置就是不成功,這次把自己實踐過程中的東西記錄一下,分享出來。
一、概念梳理
1、Mosquitto是一款實現了消息推送協議MQTT 3.1的開源消息代理軟件,提供輕量級的、支持可訂閱/可發布的消息推送模式,是設備與設備之間的短消息通信變得簡單,廣泛應用于低功耗傳感器、手機(app消息推送是場景之一)、嵌入式電腦、微型控制器等移動設備。
2、那什么是MQTT,他的英文全稱Message Queuing Telemetry Transport,翻譯過來就是“消息隊列遙測傳輸”,是ISO 標準(ISO/IEC PRF 20922)下基于發布/訂閱范式的消息協議。它工作在 TCP/IP協議族上,是為硬件性能低下的遠程設備以及網絡狀況糟糕的情況下而設計的發布/訂閱型消息協議。
目前支持MQTT的服務器中間件有EMQTT、Mosquitto、Apollo。本章講的就是Mosquitto。
3、MQTT的協議內容有很多,其中一個一定要知道,就是“消息發布服務質量”,只有三個值分別是:
二、下載與安裝
1、Mosquitto存在很多版本,如果想體驗比較新版本可以上github,但是比較麻煩的是需要自己去編譯成windows文件,編譯需要用到cmake軟件
官方后面提供了比較穩定的window安裝版本,安裝完成后可以直接使用,并且自動添加成 windows服務,非常方便,下載路徑:https://mosquitto.org/download
2、安裝完成。如果需要使用,直接啟動服務即可。
3、Mosquitto服務默認占用 1883端口,所以可不在配置文件中顯式設置。
三、關于配置文件的一些重要說明
1、配置文件在安裝目錄下的mosquitto.conf,默認情況下不做任何修改,就可以啟動mosquitto。
2、配置說明中出現的地址例如:“/var/run/mosquitto”,“/var/log/messages”,都是相對路徑,相對于系統盤根目錄。這個地方很重要,他可不是相對于安裝目錄的根目錄。例如“/var/run/mosquitto”表示的是“c:/var/run/mosquitto”,我有一段時間一直沒搞定,就是這個目錄原因,很多人沒有反饋這個問題,因為都是在linux用所以沒啥問題。
3、安裝目錄的完整路徑中,不能出現空格,否則在命令行就無法通過。Mosquitto默認安裝路徑是在“C:/Program Files/mosquitto”,這里面的“Program Files”就存在空格,導致很多問題,這個也要特別注意。所以后來我改為安裝在“C:/MosquittoTest”
四、配置登錄賬號和密碼
1、如果想方便測試可以下載安裝MQTT客戶端(http://www.eclipse.org/paho/components/tool/),我自己是用這個,不過下面我們還是用原生的命令行操作:
2、在配置文件mosquitto.conf中,任意位置加入下面文本,保存退出(我說的全新安裝的情況下,如果是維護已經使用很久的系統,可在配置文件中找到對應的屬性進行更改)
新聞熱點
疑難解答