幫助文檔
MQTT與HTTP誰最適合物聯(lián)網(wǎng)?
HTTP是最流行和最廣泛使用的協(xié)議。但在過去幾年中,MQTT迅速獲得了牽引力。當我們談?wù)撐锫?lián)網(wǎng)開發(fā)時,開發(fā)人員必須在它們之間做出選擇。那么,MQTT與HTTP誰最適合物聯(lián)網(wǎng)呢?
計訊從以下幾個方面分析了物聯(lián)網(wǎng)更適合哪個協(xié)議。
1、設(shè)計和消息傳遞
MQTT以數(shù)據(jù)為中心,而HTTP是以文檔為中心的。HTTP是用于客戶端 – 服務(wù)器計算的請求 – 響應(yīng)協(xié)議,并不總是針對移動設(shè)備進行優(yōu)化。MQTT在這些術(shù)語中的主要優(yōu)點是輕量級(MQTT將數(shù)據(jù)作為字節(jié)數(shù)組傳輸)和發(fā)布/訂閱模型,這使其非常適合資源受限的設(shè)備并有助于節(jié)省電池。
此外,發(fā)布/訂閱模型為客戶提供了彼此獨立的存在,增強了整個系統(tǒng)的可靠性。當一個客戶端出現(xiàn)故障時,整個系統(tǒng)可以繼續(xù)正常工作。
2、速度和交付
根據(jù)3G網(wǎng)絡(luò)的測量結(jié)果,MQTT的吞吐量比HTTP快93倍。
此外,與HTTP相比,MQTT協(xié)議確保了高傳輸保證。有3個級別的服務(wù)質(zhì)量:
– 最多一次:保證盡力交付。
– 至少一次:保證消息至少傳送一次。但是消息也可以不止一次傳遞。
– 恰好一次:保證每個消息只被對方接收一次
MQTT還為用戶提供Last will&Testament和Retained消息的選項。第一個意味著在客戶端意外斷開連接的情況下,所有訂閱的客戶端都將從代理獲得消息。保留消息意味著新訂閱的客戶端將立即獲得狀態(tài)更新。
HTTP協(xié)議沒有這些功能。
3、復(fù)雜性和消息大小
MQTT具有相當短的規(guī)范。只有CONNECT,PUBLISH,SUBSCRIBE,UNSUBSCRIBE和DISCONNECT類型對開發(fā)人員很重要。而HTTP規(guī)范要長得多。
MQTT具有非常短的消息頭,并且最小的包消息大小為2個字節(jié)。通過HTTP協(xié)議使用文本消息格式允許它組成冗長的標題和消息。它有助于消除麻煩,因為它可以被人類閱讀,但同時它對于資源受限的設(shè)備是不必要的。
總結(jié)
MQTT協(xié)議易于使用。對于未來的解決方案,響應(yīng)時間,吞吐量,更低的電池和帶寬使用率是第一位的,這一點至關(guān)重要。在間歇性連接的情況下,它也是完美的。
HTTP是值得和可擴展的。但是當它被稱為IoT開發(fā)時,MQTT更適合。

閩公網(wǎng)安備 35021102001331號