2016-09-21 75 views
4

MQTT和AMQP在雲連接方面有什麼區別? 我需要比較這兩種協議的連接方式,我發現更多的證據表明AMQP的工作更好,但我仍然需要找出差異。MQTT和AMQP的雲連接?

+1

「雲連通性」是什麼意思?支持兩種協議的代理商可以通過互聯網連接 – hardillb

回答

3

這裏最大的區別指出的是:我們談論AMQP 0.X或AMQP 1.0。它們是兩個完全不同的協議,只有後者是由ActiveMQ和Artemis代理,Qpid Proton客戶端和Qpid Dispatch路由器等主要開源產品支持的ISO/IEC標準。像RabbitMQ這樣的產品支持AMQP 0.x(只有1.0版本的插件)。 最大的區別是AMQP 0.x定義了一個代理應該被開發的方式,並且有交換,隊列和綁定等概念。 AMQP 1.0中沒有關於它的信息,它是TCP/IP之上的應用協議,提供了更多的抽象,並且沒有指定應該開發代理的方式。 與MQTT的第一個重要區別是AMQP 1.0是一個對等協議:您可以在兩個對等方之間使用它,不需要中間的代理。當然它用於與提供存儲轉發機制的代理進行通信。您可以將它用於請求/回覆模式和發佈/訂閱。它有一個內置的類型系統,消息提供元數據信息。

MQTT是一種輕量級協議,僅與中間代理一起工作,沒有隊列概念(它可以在客戶端使用「清理會話」功能脫機時存儲消息)。它具有AMQP的另一個特徵,如「意志」測試。它僅支持pub/sub,並且在消息中沒有元數據。

AMQP比MQTT更加面向消息傳遞。它由JP Morgan創建用於商業交易。

您可以通過深入比較找到大量關於它們的信息。 如果您需要一些資源和鏈接,請問我;)

Paolo。

1

AMQP 使用AMQP的兩個最重要的原因是可靠性和互操作性。顧名思義,它提供了與消息傳遞相關的各種功能,包括可靠的排隊,基於主題的發佈和訂閱消息傳遞,靈活的路由,事務和安全性。 AMQP直接交換路由消息 - 扇出形式,按主題,還基於頭部。

MQTT 的設計原則和MQTT的目標是更加簡單和集中均較AMQP,它提供了發佈 - 訂閱消息(不用排隊,儘管這個名字),並專門爲資源的設計,例如受限設備和低帶寬,高延遲網絡,例如撥號線路和衛星鏈路。基本上,它可以在嵌入式系統中有效使用。

我建議您使用AMQP

來源:http://blogs.vmware.com/