導讀 HTTP和MQTT是物聯網領域中兩種流行協議。盡管如此,HTTP和MQTT代表了同一個難題的兩個方面,企業需要相應地利用它們。 什么是HTTP? 超文本傳輸協議(HTTP)是萬維網的基礎協議。一個...
HTTP和MQTT是物聯網領域中兩種流行協議。盡管如此,HTTP和MQTT代表了同一個難題的兩個方面,企業需要相應地利用它們。
什么是HTTP?
超文本傳輸協議(HTTP)是萬維網的基礎協議。一個人的Web瀏覽器的內容通過HTTP請求。此請求轉到雲中的服務器,該服務器以請求的網頁進行響應。
作爲一種易於部署且直接的命令請求協議,HTTP在1990年代初問世後迅速普及。
什么是MQTT?
“需求是發明之母”這句話恰當地概括了消息隊列遙測傳輸(MQTT)的歷史。1999年,在IBM獲得了一個大型石油和天然氣項目後,它意識到需要一個輕量級的通信協議來 連接石油管道上的傳感器和通信衛星。MQTT將重新定義每個級別上機器對機器通信的有效性。
主要區別是什么?
地球儀上的交換圖標由二進制代碼組成,箭頭指向相反的方向,表示HTTP的命令請求操作和MQTT的發布訂閱操作。
HTTP通常是一個瞬態接口,其中每個請求都是一個短暫的會話。MQTT會話是長期存在的。
另一個重要區別是HTTP在命令響應基礎上運行。命令被發送到服務器並返回響應。端點、瀏覽器或小型設備必須每次都向服務器發起該事務。
但是,MQTT使用一個稱爲發布訂閱的概念。消息可以在任意一端發起。它還利用代理或消息的聚合器和分發器,允許客戶機設備與數千個端,(而不僅僅是一個端點通信。
各自的缺點和優點
MQTT將消息傳遞到另一層。但是,它比HTTP更復雜,HTTP很簡單,並且使用易於閱讀的ASCII字符。MQTT也更難使用,因爲它是雙向的,可以同時支持ASCII和二進制有效負載。
由於HTTP事務本質上是自動的,因此必須爲每條消息提供安全上下文,從而產生大量开銷。另一方面,MQTT使用代理和持久連接的概念。安全標准只需要用於第一個連接,從而立即提高性能。
而且,在MQTT和HTTP的性能控制測試中,MQTT傳輸相同數據量的速度是HTTP的80到100倍。使用HTTP,企業必須逐條消息爲其數據計劃支付額外費用。MQTT在這方面要便宜得多。此外,邊緣設備的固件更新和配置更改通過MQTT變得更加簡單。
物聯網用例的HTTP與MQTT
對於雲平台,物聯網設備通常會通過MQTT進行通信,因爲它是雙向的。盡管如此,雲的另一端仍需要HTTPS來讓用戶提取數據以進行儀表盤顯示和分析。本質上,數據可視化後端的大部分交互都是通過HTTP進行的。然而,MQTT在前端表現得更好,因爲事務性命令和原始數據是在前端輸入和輸出的。
想象一下帶有攝像機的智能連接門鈴,當有人進入視野時,該設備將激活並通過HTTP發起連接。然而,該視頻將建立一個MQTT流來移動該數據,而不是通過HTTP消息單獨發送信息。
標題:HTTP與MQTT:物聯網比較
地址:https://www.utechfun.com/post/227500.html