一.簡單介紹
1.MQTT是IBM開發的一個即時通訊協議。MQTT是面向M2M和物聯網的連接協議,採用輕量級發佈和訂閱消息傳輸機制。
2.Mosquitto是一款實現了 MQTT v3.1 協議的開源消息代理軟件,提供輕量級的,支持發佈/訂閱的的消息推送模式,使設備對設備之間的短消息通信簡單易用。更多資料請訪問:MQTT官網:點這裏
二. Mosquitto 安裝
安裝命令:控制檯直接輸入 brew install mosquitto
截圖如下:
安裝成功界面
三. mosquitto服務啓動命令
To have launchd start mosquitto now and restart at login:
brew services start mosquitto
Or, if you don't want/need a background service you can just run:
mosquitto -c /usr/local/etc/mosquitto/mosquitto.conf
停止服務 brew services stop mosquitto
啓動服務 brew services start mosquitto
四.配置服務器地址和端口號,見截圖
我寫了一個demo,一下午一直連接不上服務器,最後發現這裏的服務器和端口號配置的格式不對,最後修改爲下面的截圖配置就立刻連接上了,坑爹啊。
連接不上mosquitto 服務器的原因
需要配置下mosquitto.conf ,如下IP和Port
mosquitto 服務器的配置環境文件路徑 /usr/local/etc/mosquitto/mosquitto.conf
打開mosquitto.conf文件按照下面的截圖來配置你自己的IP和端口號
生成密碼:
mosquito_passwd -c /etc/mosquito/passwd joe
如果您的 Mosquitto MQTT 代理在雲端,最好至少使用用戶和密碼來保護它。
Mosquitto 提供了 mosquitto_passwd 實用程序,它允許我們創建用戶和密碼。系統將邀請您輸入密碼並進行確認:
sudo mosquito_passwd -c /etc/mosquito/passwd
joe
在 /etc/mosquitto 目錄中,將創建一個名爲 passwd 的文件,該文件將是一個名爲 joe 的用戶及其編碼過的密碼,如下面的屏幕截圖所示:
現在讓我們將 passwd 文件添加到 mosquitto.conf 文件中。使用您喜歡的文本編輯器並更改 file/etc/mosquitto.conf 以指示Mosquitto 讀取和使用 passwd 文件。文件的內容將是:
- allow_anonymous:這是一個布爾值,用於確定是否允許不提供用戶名的客戶端進行連接。如果設置爲false,則還意味着一個去控制經過身份驗證的客戶端訪問的連接應該被創建。
- password_file:設置密碼文件的路徑。如果已定義,則文件的內容用於控制客戶端對代理的訪問。如果 allow_anonymous 設置爲false,則只有此文件中定義的用戶才能連接。
使用以下命令停止並重新啓動Mosquitto服務後:
停止服務 brew services stop mosquitto
啓動服務 brew services start mosquitto