HTTP作為當(dāng)下使用最為廣泛的協(xié)議之一,但隨著物聯(lián)網(wǎng)行業(yè)的發(fā)展,MQTT在過去的幾年也受到了大量物聯(lián)網(wǎng)開發(fā)人員的青睞。下面我們就分別對(duì)HTTP及MQTT進(jìn)行比較分析,揭秘誰才是物聯(lián)網(wǎng)開發(fā)的上上之選。
MQTT & HTTP是什么?
首先我們先簡(jiǎn)單的了解一下MQTT、HTTP協(xié)議是什么?
MQTT(消息隊(duì)列遙測(cè)傳輸)是ISO標(biāo)準(zhǔn)(ISO/IEC PRF 20922)下基于發(fā)布/訂閱范式的消息協(xié)議。該協(xié)議建立在TCP/IP協(xié)議之上,在1999年由IBM公司發(fā)布,目前已經(jīng)更新到V5.0版本。
發(fā)布/訂閱型消息協(xié)議模型為用戶提供彼此相互獨(dú)立的設(shè)備,也因此增加了整個(gè)系統(tǒng)的穩(wěn)定性。當(dāng)其中有一個(gè)客戶端出現(xiàn)故障時(shí),整個(gè)系統(tǒng)依然可以正常工作。如圖1-1所示:
圖1-1
超文本傳輸協(xié)議(Hyper Text Transfer Protocol,HTTP)是一個(gè)簡(jiǎn)單的請(qǐng)求-響應(yīng)協(xié)議,該協(xié)議一般在TCP上運(yùn)行。該協(xié)議指定了客戶端可能發(fā)送給服務(wù)器什么樣的消息以及得到什么樣的響應(yīng)。請(qǐng)求和響應(yīng)消息的頭以ASCII形式給出;而消息內(nèi)容則具有一個(gè)類似MIME的格式。
MQTT & HTTP 特性分析
01 應(yīng)用場(chǎng)景分析
MQTT相對(duì)于HTTP而言,MQTT協(xié)議是為那些計(jì)算機(jī)性能低下受限,且工作在低帶寬,網(wǎng)絡(luò)不可靠的遠(yuǎn)程傳感器和控制設(shè)備通訊而設(shè)計(jì)的協(xié)議。而HTTP是適用于那些性能好一些的終端上,對(duì)設(shè)備的要求相對(duì)較高,所以并不適合M2M的場(chǎng)景。
02 傳輸和速度分析
MQTT擁有更快的數(shù)據(jù)吞吐量,同時(shí)MQTT協(xié)議還確保了傳輸質(zhì)量。分別有三個(gè)級(jí)別的服務(wù)質(zhì)量提供:
一是:最多一次,保證盡力交付;
二是:至少一次,保證消息至少傳輸一次,但消息也可以多次傳輸;
三是:恰好一次,保證每一個(gè)消息只被對(duì)方接收一次。
MQTT協(xié)議簡(jiǎn)潔、小巧、省電,開銷很小(固定長(zhǎng)度的頭部是 2 字節(jié)),協(xié)議交換最小化,降低了網(wǎng)絡(luò)流量,這些都是HTTP所不具備的。
MQTT & HTTP 功能
下面我們用一張表來總結(jié)MQTT協(xié)議與HTTP協(xié)議的功能。如表1-1所示:
功能 | HTTP協(xié)議 | MQTT協(xié)議 |
低協(xié)議開銷 | 否 | 是 |
不穩(wěn)定網(wǎng)絡(luò)兼容性 | 否 | 是 |
低功耗功能 | 否 | 是 |
大連接 | 否 | 是 |
推送通知 | 是 | 是 |
客戶平臺(tái)差異 | 是 | 是 |
防火墻容錯(cuò) | 是 | 是 |
保密性 | 是 | 是 |
表1-1
綜上所述,在物聯(lián)網(wǎng)開發(fā)中,MQTT協(xié)議更加適合。主要原因是:MQTT速度快、開銷小省流量、擁有更低的功耗和硬件及帶寬要求,這些都是與物聯(lián)網(wǎng)開發(fā)完美契合的要點(diǎn)。
審核編輯 :李倩
-
HTTP
+關(guān)注
關(guān)注
0文章
525瀏覽量
33495 -
MQTT
+關(guān)注
關(guān)注
5文章
682瀏覽量
23710
原文標(biāo)題:物聯(lián)網(wǎng)應(yīng)用中,為什么MQTT干掉了HTTP?
文章出處:【微信號(hào):xmwlwhyxh,微信公眾號(hào):廈門市物聯(lián)網(wǎng)行業(yè)協(xié)會(huì)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
什么是HTTP協(xié)議?HTTP協(xié)議的基本特點(diǎn)和發(fā)展歷程

超干的干貨來了!一文了解HTTP協(xié)議

做物聯(lián)網(wǎng)的惡補(bǔ)MQTT
物聯(lián)網(wǎng)項(xiàng)目開發(fā)必讀 深度分析MQTT協(xié)議優(yōu)缺點(diǎn)
【OneNET麒麟座試用體驗(yàn)】5.基于MQTT協(xié)議的OneNET應(yīng)用
工業(yè)無線MQTT物聯(lián)網(wǎng)網(wǎng)關(guān)
請(qǐng)問使用CH395外加一個(gè)藍(lán)牙芯片能否實(shí)現(xiàn)MQTT和HTTP協(xié)議?
MQTT和HTTP OTA同時(shí)使用就不能OTA了怎么解決?
Linux應(yīng)用開發(fā)【第十六章】MQTT協(xié)議分析應(yīng)用開發(fā)

物聯(lián)網(wǎng)應(yīng)用中,為什么MQTT干掉了HTTP?

mqtt協(xié)議和http協(xié)議區(qū)別
MQTT和Modbus的物聯(lián)網(wǎng)網(wǎng)關(guān)協(xié)議的區(qū)別分析

為什么使用MQTT而不是HTTP?

為什么使用MQTT而不是HTTP?

你了解清楚了嘛-TCP、HTTP、MQTT協(xié)議

評(píng)論