MQTT協定——摘自于MQTT官方文檔中文版
MQ遙測傳輸(MQ Telemetry Transport,MQTT)是一個輕量級的基于代理的釋出/訂閱式消息傳輸協定,它的設計目标是開放、簡單、輕量和易于實作。這些特征使它适用于各種受限環境,比如,但不限于:
• 網絡代價昂貴,低帶寬或不可靠。
• 在嵌入裝置中運作,處理器和記憶體資源有限。
該協定的特性包括:
• 使用釋出/訂閱消息模式,提供一對多的消息分發,解除應用程式耦合。
• 消息傳輸對有效載荷内容不可知。
• 使用TCP/IP提供基礎網絡連接配接。
• 有3個消息釋出服務品質級别:
·“至多一次”,消息釋出完全依賴于底層TCP/IP網絡。消息有可能丢失或重複。 這一級别可應用于如下情景,如環境傳感器資料,丢失一次讀記錄無所謂,因 為很快下一次讀記錄就會産生。
· “至少一次”,確定消息到達,但消息重複有可能發生。
· “隻有一次”,確定消息到達且隻到達一次。這一級别可用于如計費系統等場
景,在計費系統中,消息丢失或重複可能會導緻生成錯誤的費用。
• 輕量傳輸,開銷很小(固定頭部的長度隻有2位元組),協定交換最小化,以降低網
絡流量。
• 提供一種機制,當用戶端異常中斷時,利用 Last Will 和 Testament 特性來通知有關
各方。