博客專欄

EEPW首頁(yè) > 博客 > 這么簡(jiǎn)單的環(huán)境搭建,網(wǎng)友:我卻搭了很久,結(jié)果還是不行...

這么簡(jiǎn)單的環(huán)境搭建,網(wǎng)友:我卻搭了很久,結(jié)果還是不行...

發(fā)布人:xiaomaidashu 時(shí)間:2024-01-05 來(lái)源:工程師 發(fā)布文章
前言

大家好,我是麥?zhǔn)?,之前有小伙伴建議出一期如何快速搭建一個(gè)MQTT協(xié)議的測(cè)試環(huán)境,因?yàn)樽约簩懙膍qtt測(cè)試工具總是有這樣那樣的問(wèn)題。

其實(shí)這里要合理地使用現(xiàn)有的工具,其實(shí)很簡(jiǎn)單,幾步可以搞定,下面我們開(kāi)始介紹。

目錄
  • 前言

  • 目錄

  • 系統(tǒng)架構(gòu)

  • 準(zhǔn)備工具

    • 代理服務(wù)器

    • 客戶端

  • 驗(yàn)證消息傳遞

    • 訂閱主題

    • 發(fā)布主題

系統(tǒng)架構(gòu)

通常我們需要這些東西;

  • 一個(gè)MQTT代理服務(wù)器(Broker),作為MQTT消息的中轉(zhuǎn);
  • MQTT客戶端,可以進(jìn)行訂閱消息(接收),發(fā)布消息(發(fā)送)

注意:客戶端只能接收到已經(jīng)訂閱主題的相關(guān)消息,這里如果不清楚,建議把MQTT協(xié)議基礎(chǔ)再看一下;

我們需要搭建的整體架構(gòu)如下所示;

圖片


準(zhǔn)備工具

要快速搭建MQTT測(cè)試環(huán)境,可以使用以下步驟:

代理服務(wù)器

安裝代理服務(wù)器,MQTT Broker:選擇一個(gè)MQTT Broker來(lái)搭建測(cè)試環(huán)境。

常用的MQTT Broker有Mosquitto、HiveMQ、EMQ X等。

我們可以根據(jù)自己的需求選擇其中一個(gè)來(lái)安裝。

本文使用Mosquitto在Windows系統(tǒng)上進(jìn)行安裝作為示例:

對(duì)于Windows系統(tǒng),從Mosquitto官方網(wǎng)站下載并安裝Windows版本。

https://mosquitto.org/download/


圖片

根據(jù)自己的系統(tǒng)進(jìn)行下載,通常64位的系統(tǒng)下載相應(yīng)的軟件進(jìn)行安裝即可;

圖片


注意:安裝路徑按照實(shí)際的情況即可;

在當(dāng)前的路徑下創(chuàng)建一個(gè)配置文件mosquitto.conf,配置文件輸入的內(nèi)容如下:

listener 1883
protocol mqtt
listener 9005
protocol websockets
allow_anonymous true
log_type notice
log_type websockets
log_type warning
log_type error
log_type information

在當(dāng)前路徑下打開(kāi)dos或者powershell,輸入指令

mosquitto -c mosquitto.conf

代理服務(wù)器開(kāi)始運(yùn)行;

圖片


客戶端

客戶端MQTT Client我們也可以用現(xiàn)成的工具,本文使用MQTT X,如下所示;


圖片

下載地址:


https://mqttx.app/downloads

選擇適合自己系統(tǒng)的版本,進(jìn)行安裝即可;


圖片

通常,有幾個(gè)參數(shù)需要進(jìn)行配置;


  • Client ID:客戶端的ID,這里需要保證唯一性;
  • 代理服務(wù)器地址:按照實(shí)際的地址進(jìn)行填寫,默認(rèn)的監(jiān)聽(tīng)端口號(hào)為1883;
  • MQTT版本:默認(rèn)一般為V3.1.1

注意:如果這里不是很清楚,建議再看一下MQTT協(xié)議基礎(chǔ);

客戶端 TEST-1

圖片

客戶端 TEST-1

配置完進(jìn)行連接,可以看到代理服務(wù)器上已經(jīng)有日志提示新的客戶端連接,并且client id 是 TEST-1;

圖片

客戶端 TEST-2

同理再打開(kāi)一個(gè)MQTT X并且配置新的客戶端為TEST-2;

圖片


圖片

TEST-2成功連接

驗(yàn)證消息傳遞訂閱主題

客戶端 TEST-1 訂閱主題 TEST/A,從客戶端TEST-2接收MQTT消息,如下所示;

圖片


發(fā)布主題

客戶端 TEST-1 發(fā)布主題 TEST/A,Payload為hello world,具體如下所示;

圖片

以上結(jié)果證明可以正常進(jìn)行消息傳遞。


*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。




技術(shù)專區(qū)

關(guān)閉