IBM公司的安迪·斯坦福-克拉克及Cirrus Link公司的阿蘭·尼普于1999年撰寫了MQTT協(xié)議的第一個版本。在2013年IBM公司向結(jié)構(gòu)化資訊標準促進組織提交了MQTT 3.1版規(guī)范,并附有相關(guān)章程,以確保只能對規(guī)范進行少量更改。MQTT可以說2017年以后就成為了所有的物聯(lián)網(wǎng)模塊的標配。最早的物聯(lián)網(wǎng)模塊實現(xiàn)MQTT都是通過TCP方式來實現(xiàn)的。
首先我們要了解MQTT是什么,為何它會如此受到青睞。需要說明的是MQTT的前身就是TCP,他是基于TCP基礎(chǔ)做的一些協(xié)議開發(fā)。本質(zhì)上的數(shù)據(jù)傳輸是離不開TCP的。所以說TCP的穩(wěn)健可靠才衍生出來這么好用的協(xié)議。MQTT(消息隊列遙測傳輸)協(xié)議是ISO 標準(ISO/IEC PRF 20922)下基于發(fā)布/訂閱范式的消息協(xié)議。它工作在TCP/IP協(xié)議族上,是為硬件性能低下的遠程設(shè)備以及網(wǎng)絡(luò)狀況糟糕的情況下而設(shè)計的發(fā)布/訂閱型消息協(xié)議。
百度百科有下面的這樣定義: MQTT是一個基于客戶端-服務(wù)器的消息發(fā)布/訂閱傳輸協(xié)議。 MQTT協(xié)議是輕量、簡單、開放和易于實現(xiàn)的,這些特點使它適用范圍非常廣泛。在很多情況下,包括受限的環(huán)境中,如:機器與機器(M2M)通信和物聯(lián)網(wǎng)(IoT)。其在,通過衛(wèi)星鏈路通信傳感器、偶爾撥號的醫(yī)療設(shè)備、智能家居、及一些小型化設(shè)備中已廣泛使用。
MQTT的設(shè)計規(guī)范和特性
由于物聯(lián)網(wǎng)環(huán)境具有一定的特殊性,所以MQTT設(shè)計都需要遵守以下規(guī)范:
①精簡,不添加可有可無的功能;
②發(fā)布/訂閱(Pub/Sub)模式,方便消息在傳感器之間傳遞;
③允許用戶動態(tài)創(chuàng)建主題,零運維成本;
④把傳輸量降到最低以提高傳輸效率;
⑤把低帶寬、高延遲、不穩(wěn)定的網(wǎng)絡(luò)等因素考慮在內(nèi);
⑥支持連續(xù)的會話控制;
⑦理解客戶端計算能力可能很低;
⑧提供服務(wù)質(zhì)量管理;
⑨假設(shè)數(shù)據(jù)不可知,不強求傳輸數(shù)據(jù)的類型與格式,保持靈活性。
MQTT協(xié)議工作在低帶寬、不可靠的網(wǎng)絡(luò)的遠程傳感器和控制設(shè)備通訊而設(shè)計的協(xié)議,它具有以下主要的幾項特性:
①使用發(fā)布/訂閱消息模式,提供一對多的消息發(fā)布,解除應(yīng)用程序耦合。
②對負載內(nèi)容屏蔽的消息傳輸。
③使用TCP/IP提供網(wǎng)絡(luò)連接。
④有“至多一次”“至少一次”“只有一次”三種消息發(fā)布服務(wù)質(zhì)量。
⑤小型傳輸,開銷很小(固定長度的頭部是2字節(jié)),協(xié)議交換最小化,以降低網(wǎng)絡(luò)流量。
⑥使用Last Will和Testament特性通知有關(guān)各方客戶端異常中斷的機制。
MQTT協(xié)議適合場景:
客戶端數(shù)量眾多;
每次消息傳輸?shù)臄?shù)據(jù)量不大;
協(xié)議占用資源小,能夠方便移植到單片機等硬件上;
提供不同等級的“服務(wù)質(zhì)量Qos”;
在低帶寬、高延遲、不可靠的網(wǎng)絡(luò)和資源有限的硬件環(huán)境下,進行相對可靠的數(shù)據(jù)傳輸;
支持一對多的消息分發(fā)。
實現(xiàn)MQTT協(xié)議需要客戶端和服務(wù)器端通訊完成,在通訊過程中,MQTT協(xié)議中有三種身份:發(fā)布者(Publish)、代理(Broker,服務(wù)器)、訂閱者(Subscribe)。其中,消息的發(fā)布者和訂閱者都是客戶端,消息代理是服務(wù)器,消息發(fā)布者可以同時是訂閱者。
在MQTT中,主要有三個角色:
角色說明
發(fā)布者(Publish)發(fā)送消息的一方,可以為一個應(yīng)用程序或一臺設(shè)備
代理(Broker,服務(wù)器)管理消息隊列的一方,位于消息發(fā)布者和訂閱者之間
訂閱者(Subscribe)訂閱主題的一方,主要用于接收消息
MQTT傳輸?shù)南⒎譃椋褐黝}(Topic)和負載(payload)兩部分 :Topic,可以理解為消息的類型,訂閱者訂閱(Subscribe)后,就會收到該主題的消息內(nèi)容(payload);payload,可以理解為消息的內(nèi)容,是指訂閱者具體要使用的內(nèi)容。
MQTT客戶端是指使用MQTT協(xié)議的應(yīng)用程序或者設(shè)備,它總是建立到服務(wù)器的網(wǎng)絡(luò)連接??蛻舳丝梢允牵?1)發(fā)布其他客戶端可能會訂閱的信息;(2)訂閱其它客戶端發(fā)布的消息;(3)退訂或刪除應(yīng)用程序的消息;(4)斷開與服務(wù)器連接。
MQTT服務(wù)器稱為"消息代理"(Broker),可以是一個應(yīng)用程序或一臺設(shè)備。它是位于消息發(fā)布者和訂閱者之間,它可以:(1)接收來自客戶的網(wǎng)絡(luò)連接;(2)接收客戶發(fā)布的應(yīng)用信息;(3)處理來自客戶端的訂閱和退訂請求;(4)向訂閱的客戶轉(zhuǎn)發(fā)應(yīng)用程序消息。
其實對用戶需要明白一點的就是,它就是客戶端和服務(wù)器之間的數(shù)據(jù)交互。MQTT的應(yīng)用存在于我們身邊的方方面面。上面圖告訴我們, MQTT是需要有一個服務(wù)器的,左邊有設(shè)備進行數(shù)據(jù)發(fā)布,右邊是有數(shù)據(jù)接收。 簡單來講,我們掃碼付款吃飯,首先我們先掃二維碼信息,手機會將我們的二維碼信息和付款信息金額發(fā)布到MQTT的服務(wù)器。MQTT服務(wù)器收到你的付款金額后,會推送給你收錢方的商家,所以你會聽到付款消息的聲音,在商家的支付寶里面也會多出你轉(zhuǎn)過來的費用了。
上圖演示的是發(fā)布數(shù)據(jù)消息,然后在手機和電腦端接收消息。可以看到,發(fā)布數(shù)據(jù)里面不但有數(shù)據(jù)內(nèi)容還有個TOPIC。所以為何剛才上面提及到付款的時候,不但有付款金額還有二維碼信息,也是一個道理。
TOPIC主題如何理解,比如我們收發(fā)快遞的時候,快遞盒子上面的收件人信息機會可以理解為主題,因為只有收件人信息核實清楚,快遞才不會拿錯。 所以上圖演示的溫度信息就是因為手機端先訂閱了“temp”這個參數(shù)。 所以當發(fā)布者發(fā)布消息的時候,有這個主題的時候,服務(wù)器就會推送這樣的數(shù)據(jù)包括主題給訂閱者進行接收。所以在MQTT里面最為重要的信息就是主題。相對TCP而言,它只是收發(fā)數(shù)據(jù)信息,沒有主題概念。所以對于TCP而言,是很難做客戶端與客戶端之間的通訊測試的,因為數(shù)據(jù)沒法分清誰是誰。
大家只要理解MQTT是TCP的上層封裝,只是比TCP發(fā)數(shù)據(jù)的時候多一個TOPIC即可。 我們使用MQTT.fx的軟件給用戶測試下MQTT的使用概念。
打開MQTT.fx軟件,用戶需要先配置鏈接的服務(wù)器,他既可以用作發(fā)布者也可以用作訂閱者。
上圖是MQTT的服務(wù)器配置,用戶如果沒有服務(wù)器,使用我們所提供的免費服務(wù)器進行測試也是可以的。
配置完成后,點擊下connect按鈕,進行連接。如果服務(wù)器存在,那么就會顯示綠色燈,如果不存在是連接不上的。
左邊有一個按鈕是發(fā)布消息的英文名稱,首先在第一個框中輸入發(fā)布主題,下面的大白空頁輸入發(fā)布數(shù)據(jù)。
然后發(fā)布的右邊的按鈕是訂閱的按鈕英文名稱,同樣第一個框需要用戶輸入訂閱主題。這點之前明確過,如果要訂閱到消息,必須和發(fā)布數(shù)據(jù)的主題名稱一樣才可以。
我們在發(fā)布頁面發(fā)送數(shù)據(jù),看下訂閱端是否可以收到數(shù)據(jù)。
可以看到訂閱端訂閱到了發(fā)布端發(fā)來的消息內(nèi)容了,這樣一個模擬的MQTT測試流程就結(jié)束了。
與OneNET服務(wù)器連接初體驗
MQTT協(xié)議采用發(fā)布/訂閱(Publish/Subscribe)模式, MQTT是應(yīng)用層的協(xié)議,其底層為TCP協(xié)議,TCP是傳輸層協(xié)議 ,云端(服務(wù)器端)通過主題(Topic)的方式管理各個物聯(lián)網(wǎng)設(shè)備的訂閱,實現(xiàn)將設(shè)備與設(shè)備之間消息進行轉(zhuǎn)發(fā)。一般物聯(lián)網(wǎng)平臺都是支持MQTT協(xié)議的,比如我們要接入的OneNET——中國移動物聯(lián)網(wǎng)開放平臺,也是支持MQTT協(xié)議的,具體支持的協(xié)議包括以下幾種:
OneNET平臺相當于MQTT中的Broker(服務(wù)器) ,要想實現(xiàn)與OneNET平臺連接,我們需要一個客戶端,而MQTT.fx是目前最常用的MQTT客戶端,我們 使用的MQTT.fx的版本為1.7.1 。
MQTT.fx軟件下載后,默認安裝即可,安裝完畢的軟件界面如下:
MQTT.fx與OneNET服務(wù)器連接:
創(chuàng)建產(chǎn)品和設(shè)備
注冊并登錄OneNET平臺的控制臺
創(chuàng)建產(chǎn)品
創(chuàng)建設(shè)備
我們按照上面網(wǎng)文教程創(chuàng)建一個產(chǎn)品和一個測試設(shè)備:
服務(wù)器地址
OneNET物聯(lián)網(wǎng)平臺的地址和端口在下面鏈接獲?。?/p>
Broker Address:mqtts.heclouds.com
Broker Port:1883
進入與MQTT服務(wù)器連接配置界面之后,將地址和端口填寫到下圖所示位置:
其他部分配置信息說明:
Profile Name:可以隨便命名,我命名為:OneNET
Profile Type:保持默認設(shè)置。
Broker Address:MQTT服務(wù)器的地址,mqtt.heclouds.com
Broker Port:服務(wù)器端口,1883
Client ID:客戶端ID,此處填寫“設(shè)備名稱”:XiaoHaLED
General標簽下的內(nèi)容,MQTT Version后面的復(fù)選框取消,其他默認即可。
填寫用戶憑證信息
在User Credentials標簽頁下面,需要我們填寫User Name和Password 。
其中,User Name就是產(chǎn)品管理頁面的產(chǎn)品ID ,對應(yīng)我創(chuàng)建的測試設(shè)備就是:EyCs17z321。
Password應(yīng)該填寫鑒權(quán)信息,此處即為一個token。
生成token
token的介紹
token生成工具
OneNET提供了token生成的上位機軟件,可以通過下面鏈接下載并使用:
其中:res:products/{pid}/devices/{device_name}
上面是res的值由產(chǎn)品ID和設(shè)備名稱組成,通過上面我們知道,我們創(chuàng)建的測試設(shè)備的產(chǎn)品ID值為:EyCs17z321,設(shè)備名稱的值為:XiaoHaLED 。
所以,最終res 的值為:products/EyCs17z321/devices/XiaoHaLED
et:expiration time,表示過期時間,此時間要求大于當前時間,為了避免太快過期,可以適當加大此參數(shù)數(shù)值,此處為unix時間。簡單來說,unix時間戳就是從1970年1月1日(UTC/GMT的午夜)開始所經(jīng)過的秒數(shù)。
除了使用程序獲得當前unix時間以外,還可以使用網(wǎng)上現(xiàn)成的“unix時間戳 << >> 北京時間”轉(zhuǎn)換的在線工具完成,比如下面的網(wǎng)址即可:
2024-05-16 1440 <==> et:1715839360
key:這個參數(shù)就是“ access_key ”這個參數(shù):
cTNX52nLNysj9yvfuT+RQy2TPWkX4SszoQ+7xUsluRE=,
所在位置如下圖所示:
其他參數(shù)默認即可。
將上面得到的res、et、key代入token計算工具軟件中,點擊Generate按鈕:
生成的字符串即為User Credential標簽頁下面, Password文本框內(nèi)需要填寫的內(nèi)容,即填寫如下內(nèi)容:
version=2018-10-31&res=products%2FEyCs17z321%2Fdevices%2FXiaoHaLED&et=1715839360&method=md5&sign=T1DUaZKADMMroYpR4G5aEg%3D%3D
其他參數(shù)默認即可,然后點擊OK退出配置頁面。
連接OneNET服務(wù)器
下圖下拉列表中,選擇剛剛創(chuàng)建的Profile Name:OneNET,點擊“Connect”按鈕,成功連接至OneNET平臺服務(wù)器,效果如下圖所示:
連接之后,我們查看OneNET控制臺,在 設(shè)備接入與管理-->設(shè)備管理 頁面,可以看到XiaoHaLED設(shè)備已經(jīng)處于在線狀態(tài)。
好了,我們已經(jīng)順利連接上了OneNET服務(wù)器。用這個MQTT.fx 軟件也可以連接其他物聯(lián)網(wǎng)平臺,比如阿里云物聯(lián)網(wǎng)平臺。
7個發(fā)展趨勢
隨著MQTT在物聯(lián)網(wǎng)中的使用規(guī)模不斷增長,場景更加多樣化,我們可以預(yù)見在 MQTT技術(shù)領(lǐng)域中將會出現(xiàn)以下7個發(fā)展趨勢:
1、MQTT over QUIC
QUIC(Quick UDP Internet Connections)是由Google開發(fā)的一種新的傳輸協(xié)議,運行于UDP之上,旨在減少建立新連接所帶來的延遲,提高數(shù)據(jù)傳輸速率,并解決 TCP 的一些限制。下一代互聯(lián)網(wǎng)協(xié)議HTTP/3使用了QUIC作為底層傳輸協(xié)議,為網(wǎng)絡(luò)應(yīng)用帶來了比 HTTP/2 更低的時延和更好的加載體驗。
MQTT over QUIC是自2017年MQTT 5.0規(guī)范發(fā)布以來MQTT協(xié)議中最具創(chuàng)新性的進展。憑借多路復(fù)用、更快的連接建立和遷移等優(yōu)勢特性,其具有成為下一代 MQTT協(xié)議標準的潛力。
MQTT 5.0定義了三種傳輸類型:TCP、TLS和WebSocket。在物聯(lián)網(wǎng)安全最佳實踐中,MQTT over TLS/SSL廣泛用于生產(chǎn)環(huán)境以保護客戶端和Broker之間的通信。然而它速度慢、延遲高,需要3.5個RTT,即 TCP 3次握手以及TLS 4次握手才能建立新的MQTT連接。
與MQTT over TLS/SSL相比,MQTT over QUIC更快且延遲更低,在初次建立連接時僅需 1 RTT,并可以利用 0 RTT 連接恢復(fù)的特性來加速重連。QUIC協(xié)議??梢葬槍Ω鞣N用例進行定制,例如在不穩(wěn)定網(wǎng)絡(luò)環(huán)境下,或是客戶端到服務(wù)器更低延遲通信的場景。它能夠在諸如移動網(wǎng)絡(luò)下的車聯(lián)網(wǎng)(IoV)以及要求極低時延的工業(yè)物聯(lián)網(wǎng)(IIoT)場景下發(fā)揮重要作用,并有效提升其使用體驗。
2、MQTT Serverless
云計算中Serverless模式的興起標志著應(yīng)用的設(shè)計、開發(fā)、部署和運行方式發(fā)生了突破性的范式轉(zhuǎn)變。這種模式下開發(fā)者將能夠?qū)W⒂趹?yīng)用的業(yè)務(wù)邏輯,無需管理基礎(chǔ)設(shè)施,從而提高敏捷性、可擴展性和成本效益。
Serverless模式的MQTT消息服務(wù)器將是2023年的一種前沿架構(gòu)創(chuàng)新。傳統(tǒng)的物聯(lián)網(wǎng)應(yīng)用需要數(shù)分鐘甚至數(shù)小時才能在云上或在企業(yè)私有環(huán)境中部署MQTT消息服務(wù),相比之下,Serverless MQTT只需點擊幾下就能快速完成MQTT服務(wù)的部署。除了極快的部署速度,Serverless MQTT更大的價值在于其無可比擬的靈活性:根據(jù)用戶需求對資源進行無縫擴展,以及與這種彈性架構(gòu)相匹配的按量計費定價模式。Serverless MQTT有望推動MQTT更廣泛地應(yīng)用,降低運營成本,激發(fā)不同行業(yè)的創(chuàng)新協(xié)作。我們甚至可能看到每個物聯(lián)網(wǎng)和工業(yè)物聯(lián)網(wǎng)開發(fā)者都能擁有一個免費的 Serverless MQTT消息服務(wù)器。
3、MQTT多租戶架構(gòu)
多租戶架構(gòu)是實現(xiàn)Serverless MQTT服務(wù)的一個重要基礎(chǔ)。來自不同用戶或租戶的物聯(lián)網(wǎng)設(shè)備可以連接到同一個大規(guī)模的MQTT集群,同時保持其數(shù)據(jù)和業(yè)務(wù)邏輯與其他租戶隔離。在SaaS應(yīng)用中多租戶架構(gòu)很常見,即一個應(yīng)用為多個客戶或租戶服務(wù)。其通常有兩種以下不同的實現(xiàn)方式:租戶隔離:向每個租戶提供一個單獨的應(yīng)用實例,在服務(wù)器或虛擬機上運行。數(shù)據(jù)庫隔離:多個租戶共享一個應(yīng)用實例,但每個租戶有自己的數(shù)據(jù)庫模式,以確保數(shù)據(jù)隔離。
在MQTT Broker的多租戶架構(gòu)中,每個設(shè)備和租戶都有一個單獨的、隔離的命名空間,包括一個獨特的主題前綴和訪問控制列表(ACL),用來定義用戶可以發(fā)布或訂閱哪些主題。多租戶MQTT 消息服務(wù)器能夠減少管理開銷,并靈活支持復(fù)雜場景或大規(guī)模物聯(lián)網(wǎng)應(yīng)用場景。例如,一個大型組織中的部門和應(yīng)用可以作為不同的租戶使用同一個 MQTT集群。
4、MQTT Sparkplug 3.0
MQTT Sparkplug是由Eclipse基金會設(shè)計的開放標準規(guī)范,其最新版本為MQTT Sparkplug 3.0,它定義了工業(yè)設(shè)備的統(tǒng)一數(shù)據(jù)接入規(guī)范,能夠通過MQTT協(xié)議連接各類工業(yè)傳感器、動作執(zhí)行器、可編程邏輯控制器(PLC)和網(wǎng)關(guān)。
MQTT Sparkplug 3.0于2022年11月發(fā)布,具有以下關(guān)鍵的新功能和改進:
MQTT 5.0支持:增加了對MQTT 5.0的支持,包括共享訂閱、消息過期和流量控制等新功能。
優(yōu)化的數(shù)據(jù)傳輸:對數(shù)據(jù)傳輸進行了優(yōu)化,使用更緊湊的數(shù)據(jù)編碼和壓縮算法。
擴展的數(shù)據(jù)模型:引入了一個擴展的數(shù)據(jù)模型,它允許更詳細的設(shè)備信息通信,還支持配置數(shù)據(jù)和設(shè)備元數(shù)據(jù)等其他信息的傳輸。
更高的安全性:包括對安全性的若干改進,如支持雙向TLS認證、優(yōu)化的訪問控制機制等。
簡化的設(shè)備管理:包括自動設(shè)備注冊和發(fā)現(xiàn),簡化設(shè)備配置,以及改進診斷等。
MQTT Sparkplug旨在簡化不同工業(yè)設(shè)備間的連接和通信,實現(xiàn)高效的工業(yè)數(shù)據(jù)采集、處理和分析。隨著新版本的發(fā)布,MQTT Sparkplug 3.0將會在工業(yè)物聯(lián)網(wǎng)領(lǐng)域得到更廣泛的應(yīng)用。
5、MQTT統(tǒng)一命名空間
統(tǒng)一命名空間(Unified Namespace)是一個建立在面向工業(yè)物聯(lián)網(wǎng)和工業(yè)4.0的 MQTT Broker上的解決方案架構(gòu)。它為MQTT主題提供了一個統(tǒng)一的命名空間,并為消息和結(jié)構(gòu)化數(shù)據(jù)提供了一個集中的存儲庫。
統(tǒng)一命名空間使用中央MQTT Broker ,以星形拓撲結(jié)構(gòu)連接工業(yè)設(shè)備、傳感器和應(yīng)用程序,如SCADA、MES 和 ERP。統(tǒng)一命名空間以事件驅(qū)動的架構(gòu)極大簡化了工業(yè)物聯(lián)網(wǎng)應(yīng)用的開發(fā)。在傳統(tǒng)的工業(yè)物聯(lián)網(wǎng)系統(tǒng)中,OT和IT系統(tǒng)通常是分開的,其數(shù)據(jù)、協(xié)議和工具均獨立運行。通過采用統(tǒng)一命名空間,可以讓OT和IT系統(tǒng)更有效地交換數(shù)據(jù),最終實現(xiàn)物聯(lián)網(wǎng)時代OT和IT的統(tǒng)一。如今,通過EMQ提供的開源 MQTT 消息服務(wù)器EMQX或NanoMQ,結(jié)合工業(yè)協(xié)議網(wǎng)關(guān)軟件Neuron,用戶將可以構(gòu)建一個由 IT 界最先進技術(shù)支持的統(tǒng)一命名空間架構(gòu)。
6、MQTT跨域集群
MQTT跨域集群(MQTT Geo-Distribution)是一個創(chuàng)新架構(gòu),允許部署在不同地區(qū)或云上的MQTT Broker作為一個單集群一起工作。通過跨域集群,MQTT消息可以在不同地區(qū)的MQTT Broker之間自動同步和傳輸。
有兩種方法可以實現(xiàn)MQTT跨域集群:單集群,多地區(qū):單個MQTT集群,每個節(jié)點在不同地區(qū)運行。多集群,多云:分布在不同云中的多個MQTT集群連接在一起。我們可以將這兩種方法結(jié)合,在跨區(qū)域部署的MQTT Broker之間創(chuàng)建一個可靠的物聯(lián)網(wǎng)數(shù)據(jù)基礎(chǔ)設(shè)施。通過MQTT跨域集群,企業(yè)可以建立一個跨多云的全球MQTT接入網(wǎng)絡(luò)。不管所處的物理位置在哪里,設(shè)備和應(yīng)用都能從最近的節(jié)點接入實現(xiàn)相互通信。
7、MQTT Streams
MQTT Streams是MQTT協(xié)議備受期待的一項擴展能力,能夠在MQTT Broker內(nèi)實時處理海量、高頻的數(shù)據(jù)流。這在發(fā)布訂閱模式消息傳輸?shù)幕A(chǔ)上進一步增強了傳統(tǒng) MQTT Broker的能力。通過MQTT Streams,客戶端可以像Apache Kafka一樣將 MQTT消息以流的形式進行生產(chǎn)和消費,從而實現(xiàn)歷史消息回放。這對事件驅(qū)動的處理尤為重要,可以確保最終的數(shù)據(jù)一致性、可審計和合規(guī)性。流處理對于從物聯(lián)網(wǎng)設(shè)備產(chǎn)生的大量數(shù)據(jù)中實時挖掘商業(yè)價值至關(guān)重要。以前,這一過程通過一個過時且復(fù)雜的大數(shù)據(jù)堆棧實現(xiàn),需要MQTT Broker與Kafka、Hadoop、Flink或Spark進行集成。而通過內(nèi)置的流處理,MQTT Streams簡化了物聯(lián)網(wǎng)數(shù)據(jù)處理架構(gòu),提高了數(shù)據(jù)處理效率和響應(yīng)時間,并為物聯(lián)網(wǎng)提供了一個統(tǒng)一的消息傳遞和流處理平臺。通過消息去重、消息重放和消息過期等功能,MQTT Streams實現(xiàn)了高吞吐量、低時延和容錯,使其成為基于MQTT的物聯(lián)網(wǎng)應(yīng)用中實時數(shù)據(jù)流處理的強大工具。
總的來說,MQTT的這7個技術(shù)趨勢反映了新興技術(shù)的進步以及它們在推動物聯(lián)網(wǎng)發(fā)展進程中的重要作用。作為一個發(fā)展了二十多年的標準消息傳輸協(xié)議,MQTT的重要性正在持續(xù)增長。隨著物聯(lián)網(wǎng)在各行業(yè)被越來越廣泛地應(yīng)用,MQTT協(xié)議也在不斷發(fā)展以應(yīng)對新的挑戰(zhàn),滿足更低延遲的連接、更便捷的MQTT服務(wù)部署、復(fù)雜場景或大規(guī)模物聯(lián)網(wǎng)應(yīng)用下靈活管理以及工業(yè)設(shè)備接入的需求。作為龐大物聯(lián)網(wǎng)的神經(jīng)系統(tǒng),在2023年及更遠的未來,MQTT必將在工業(yè)物聯(lián)網(wǎng)和車聯(lián)網(wǎng)等關(guān)鍵領(lǐng)域中發(fā)揮重要作用。
-
物聯(lián)網(wǎng)
+關(guān)注
關(guān)注
2931文章
46251瀏覽量
392692 -
服務(wù)器
+關(guān)注
關(guān)注
13文章
9795瀏覽量
88002 -
TCP
+關(guān)注
關(guān)注
8文章
1402瀏覽量
81063 -
客戶端
+關(guān)注
關(guān)注
1文章
301瀏覽量
17095 -
MQTT
+關(guān)注
關(guān)注
5文章
682瀏覽量
23723
原文標題:深入淺出地學習MQTT協(xié)議
文章出處:【微信號:雨飛工作室,微信公眾號:雨飛工作室】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
評論