目錄
- 一、什么是IoT
- 二、MQTT 和其他消息隊列的傳輸協議有什么不同
- 三、如何選擇 MQTT 產品
- 四、MQTT 集群如何支持海量在線的 IoT 設備
- 五、總結
本文來源:極客時間vip課程筆記
一、什么是IoT
- IoT,也就是物聯網,物聯網這個詞兒,它的含義還不那么直觀,但你看它的英文:IoT,也就是 Internet of Things 的縮寫,Things 這個單詞,我們知道,它在英語里面幾乎可以指代一切。翻譯成中文,我個人覺得,“東西”這個詞兒比較貼切。那物聯網,就可以理解為把所有東西都用互聯網給連接起來。
- 這里面不僅僅包括像電腦、手機這樣的智能設備,還包括一些已經智能化的傳統設備,比如汽車、冰箱、路邊的攝像頭等等,將來還將包括更多的、各種各樣的物品:比如水杯、衣服、工業用的各種設備和工具等等,也就是所謂的萬物互聯。所以,IoT 它的未來絕對是大有可期的。
- 那這些物聯網設備,它要實現互相通信,也必須有一套標準的通信協議,MQTT 就是專門為物聯網設備設計的一套標準的消息隊列通信協議。使用 MQTT 協議的 IoT 設備,可以連接到任何支持 MQTT 協議的消息隊列上,進行通信。
二、MQTT 和其他消息隊列的傳輸協議有什么不同
- 從宏觀上來說,MQTT 和其他消息隊列采用的傳輸協議是差不多的。它采用的也是“發布 - 訂閱”的消息模型。網絡結構上,也是 C/S 架構,IoT 設備是客戶端,Broker 是服務端,客戶端與 Broker 通信進行收發消息。
- 雖然 MQTT 和普通的消息隊列相比,在消息模型、功能和網絡結構上都是差不多的,但由于他們面對的使用場景是不一樣的,所以,MQTT 和普通的消息隊列相比,還是有很多區別的。我們看一下 MQTT 的使用場景有什么樣的特點?
- 首先,它的客戶端都是運行在 IoT 設備上。IoT 設備它有什么特點?最大的特點就是便宜,一個水杯才賣幾十塊錢,它上面的智能模塊的成本十塊錢最多了,再貴就賣不出去了。十塊錢的智能設備內存都是按照 KB 來計算的,可能都沒有 CPU,也不一定有操作系統,整個設備就一個 SoC。這樣的設備就需要通信協議不能太復雜&#x