Windows下搭建MQTT服務(wù)器的詳細(xì)教程
一、MQTT服務(wù)器軟件篩選
MQ遙測(cè)傳輸(MQTT)是輕量級(jí)基于代理的發(fā)布/訂閱的消息傳輸協(xié)議,設(shè)計(jì)思想是開放、簡(jiǎn)單、輕量、易于實(shí)現(xiàn)。這些特點(diǎn)使它適用于低帶寬受限環(huán)境。特點(diǎn)包括以下:
使用發(fā)布/訂閱消息模式,提供一對(duì)多的消息發(fā)布,解除應(yīng)用程序耦合。對(duì)負(fù)載內(nèi)容屏蔽的消息傳輸。使用TCP/IP提供網(wǎng)絡(luò)連接。小型傳輸,開銷很?。ü潭ㄩL(zhǎng)度的頭部是2字節(jié)),協(xié)議交換最小化,以降低網(wǎng)絡(luò)流量。使用Last Will和Testament特性通知有關(guān)各方客戶端異常中斷的機(jī)制。有三種消息發(fā)布服務(wù)質(zhì)量:(1)“至多一次”,消息發(fā)布完全依賴底層 TCP/IP 網(wǎng)絡(luò)。會(huì)發(fā)生消息丟失或重復(fù)。這一級(jí)別可用于如下情況,環(huán)境傳感器數(shù)據(jù),丟失一次讀記錄無所謂,因?yàn)椴痪煤筮€會(huì)有第二次發(fā)送。(2)“至少一次”,確保消息到達(dá),但消息重復(fù)可能會(huì)發(fā)生。(3)“只有一次”,確保消息到達(dá)一次。這一級(jí)別可用于如下情況,在計(jì)費(fèi)系統(tǒng)中,消息重復(fù)或丟失會(huì)導(dǎo)致不正確的結(jié)果。
能夠搭建MQTT服務(wù)器的軟件有很多,比如:
mosquitto,Eclipse Mosquitto使用 C 語言實(shí)現(xiàn)的 MQTT 服務(wù)器。EMQX,使用 Erlang 語言開發(fā)的 MQTT 服務(wù)器,內(nèi)置強(qiáng)大的規(guī)則引擎,支持許多其他 IoT 協(xié)議比如 MQTT-SN、 CoAP、LwM2M 等。Mosca,使用 Node.JS 開發(fā)的 MQTT 服務(wù)器,簡(jiǎn)單易用。VerneMQ,使用 Erlang 開發(fā)的 MQTT 服務(wù)器。
本文是以mosquitto在windows下搭建過程為例進(jìn)行介紹。
二、MQTT服務(wù)器軟件mosquitto下載
1、進(jìn)入mosquitto下載網(wǎng)址:https://mosquitto.org/download/,如下圖:
2、點(diǎn)擊上圖中紅框的鏈接進(jìn)行下載,下載到本地計(jì)算機(jī),如下圖:
3、右鍵點(diǎn)擊mosquitto-2.0.14-install-windows-x64.exe以管理員身份進(jìn)行安裝,如下圖:
4、點(diǎn)擊"Next >"按鈕,如下圖:
5、繼續(xù)點(diǎn)擊“Next >”按鈕,如下圖:
6、
可以更改安裝目錄,我更改到D盤,點(diǎn)擊“Install”按鈕,如下圖:
7、等待安裝完畢,如下圖:
8、點(diǎn)擊"Finish"按鈕,至此安裝完成。
三、修改mosquitto配置,并啟動(dòng)mosquitto服務(wù)
1、安裝完畢后,需要對(duì)配置文件進(jìn)行修改,配置文件位置:D:\mosquitto\mosquitto.conf,如下:
2、這里我們主要是改一下偵聽端口和開啟用戶驗(yàn)證(即設(shè)置用戶名和密碼)2.1 修改偵聽端口打開mosquitto.conf,找到linstener,取消前面的#注釋,并指定要偵聽的端口,如下:
listener 7788
2.2 設(shè)置用戶名密碼2.2.1 找到找到allow_anonymous節(jié)點(diǎn),這個(gè)節(jié)點(diǎn)作用是,是否開啟匿名用戶登錄,默認(rèn)是true。打開此項(xiàng)配置(將前面的 # 號(hào)去掉)之后將其值改為true
修改前:#allow_anonymous修改后:allow_anonymous false
2.2.2 找到password_file節(jié)點(diǎn),這個(gè)節(jié)點(diǎn)是告訴服務(wù)器你要配置的用戶將存放在哪里。打開此配置并指定pwfile.example文件路勁(注意是絕對(duì)路勁)
修改前:#password_file修改后:password_file D:\pwfile.example
3、在管理工具->服務(wù),中找到Mosquitto Broker,啟動(dòng)mosquitto服務(wù),如下圖:
4、以管理員身份打開CMD,并切換到d:/mosquitto目錄下,運(yùn)行以下命令添加用戶名和密碼:
mosquitto_passwd.exe -c d:/pwfile.example admin
提示連續(xù)兩次輸入密碼、創(chuàng)建成功。命令解釋: -c 創(chuàng)建一個(gè)用戶、/etc/mosquitto/pwfile.example 是將用戶創(chuàng)建到 pwfile.example 文件中、admin 是用戶名。如下圖:
注意:添加用戶和密碼后,需要對(duì)mosquitto服務(wù)進(jìn)行重啟才能生效。
四、利用mosquitto工具測(cè)試訂閱與發(fā)布
再以管理員啟動(dòng)2個(gè)CMD窗口,并進(jìn)入d:/mosquitto目錄,cmd窗口1作為訂閱者,cmd窗口2作為發(fā)布者,如下圖:
在cmd窗口1中執(zhí)行以下命令,進(jìn)行消息訂閱
mosquitto_sub.exe -h 127.0.0.1 -p 7788 -u admin -P 123456 -v -t sensor
在cmd窗口2中執(zhí)行以下命令,進(jìn)行消息發(fā)送
mosquitto_pub.exe -h 127.0.0.1 -p 7788 -u admin -P 123456 -t sensor -m "消息測(cè)試"
如下圖:
五、可視化MQTT客戶端工具M(jìn)QTTX使用
MQTT的客戶端測(cè)試工具有很多,而MQTTX無疑是其中的佼佼者,下面就介紹一下其使用過程。1、首先從官網(wǎng)下載,MQTTX下載地址:
https://github.com/emqx/MQTTX/releases
2、選擇適合你操作系統(tǒng)的版本進(jìn)行下載,如下圖:
3、下載后如下圖:
4、以管理員
方式安裝MQTTX-Setup-1.7.3.exe,如果出現(xiàn)Microsoft Defender SmartScreen阻止提示,則點(diǎn)擊“仍要運(yùn)行”,如下圖:
5、安裝步驟
如下圖:
6、安裝過程中可以更改安裝目錄,如下圖:
7、點(diǎn)擊“安裝”按鈕,如下圖:
8、安裝完畢是會(huì)出現(xiàn)完成提示,如下圖:
9、勾選運(yùn)行MQTTX(R),點(diǎn)擊“完成”按鈕,則運(yùn)行MQTTX,如下圖:
10、點(diǎn)擊“New Connection”按鈕,則出現(xiàn)新建連接對(duì)話框,根據(jù)MQTT服務(wù)器的信息,輸入對(duì)應(yīng)的參數(shù),如下圖:
11、點(diǎn)擊Connect按鈕,如下圖:
12、如果想訂閱一個(gè)主題,則點(diǎn)擊“New Subscription”按鈕,則出現(xiàn)新建訂閱對(duì)話框,如下圖:
13、輸入對(duì)應(yīng)的主題后,點(diǎn)擊“Confirm”按鈕,如下圖:
14、結(jié)合CMD窗口使用mosquitto_pub.exe發(fā)布工具發(fā)一個(gè)消息測(cè)試一下,如下圖:
從上圖中可以看出,訂閱的主題已經(jīng)接收到了測(cè)試的消息。
到此這篇關(guān)于Windows下搭建MQTT服務(wù)器的詳細(xì)教程的文章就介紹到這了,更多相關(guān)MQTT服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用gitlab在服務(wù)器上搭建私服git倉庫并上傳項(xiàng)目的操作方法
這篇文章主要介紹了使用gitlab在服務(wù)器上搭建私服git倉庫,并且上傳項(xiàng)目,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-12-12寶塔面板phpMyadmin數(shù)據(jù)庫管理出現(xiàn)500錯(cuò)誤的解決方法
寶塔面板phpMyadmin數(shù)據(jù)庫管理出現(xiàn)500錯(cuò)誤的解決方法,經(jīng)常會(huì)出現(xiàn)數(shù)據(jù)庫管理phpMyadmin打不開,或則出現(xiàn)500內(nèi)部服務(wù)器錯(cuò)誤,本文介紹如果出現(xiàn)這個(gè)問題該如何解決2023-08-08基于http.server搭建局域網(wǎng)服務(wù)器過程解析
這篇文章主要介紹了基于http.server搭建局域網(wǎng)服務(wù)器過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-10-10生產(chǎn)級(jí)K8S基礎(chǔ)環(huán)境部署配置流程
這篇文章主要為大家介紹了生產(chǎn)級(jí)K8S入門之基礎(chǔ)環(huán)境的部署過程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多2022-03-03在CentOS6.5上使用Jexus安裝部署ASP.NET MVC4和WebApi
本文主要介紹如何在CentOS6.5安裝Jexus,并介紹其常用命令以及如何創(chuàng)建和部署ASP.NET MVC4項(xiàng)目,從而實(shí)現(xiàn)跨平臺(tái)部署。2016-05-05http自動(dòng)跳轉(zhuǎn)https的配置方法
這篇文章主要介紹了http自動(dòng)跳轉(zhuǎn)https的配置方法,需要的朋友可以參考下2017-03-03MongoDB學(xué)習(xí)筆記(六) MongoDB索引用法和效率分析
MongoDB中的索引其實(shí)類似于關(guān)系型數(shù)據(jù)庫,都是為了提高查詢和排序的效率的,并且實(shí)現(xiàn)原理也基本一致2013-07-07