MQTT 庫 MQTT 代理
要在應用程式中使用 MQTT,我們有各種可用於不同程式語言的庫。
MQTT 庫
庫 | 語言 | 描述 |
---|---|---|
Eclipse Paho | C,C++,Java,Javascript,Python,Go,C# | Paho 客戶端是最受歡迎的客戶端庫實現之一。 |
Fusesource MQTT 客戶端 | Java | Fusesource MQTT 客戶端是一個 Java MQTT 客戶端,具有 3 種不同的 API 樣式:Blocking,Future-based 和 Callback-based。 |
MQTT.js | 使用 Javascript | MQTT.js 是 Node.js 和 Web 應用程式的 MQTT 客戶端庫,可作為 npm 模組使用。 |
紅寶石 MQTT | 紅寶石 | ruby-mqtt 是一個可用作 Ruby gem 的 MQTT 客戶端。它不支援 QoS> 0。 |
MQTT 經紀人
代理主要負責接收所有訊息(代理就像訊息伺服器),過濾它們,決定誰對它感興趣,然後將訊息傳送給所有訂閱的客戶端。MQTT Broker 實現:下表顯示了一些最流行的開源和商業代理實現。
經紀人______ | 描述 |
---|---|
Apache ActiveMQ | ActiveMQ 是一個開源的多協議訊息代理,其核心是圍繞 JMS 編寫的。它支援 MQTT 並通過 JMS 對映 MQTT 語義。 |
mosquitto |
|
兔子 MQ | RabbitMQ 是一個可擴充套件的開源訊息佇列實現,用 Erlang 編寫。它是一個 AMQP 訊息代理,但有一個 MQTT 外掛可用。不支援所有 MQTT 功能(例如 QoS 2)。 |
HiveMQ |
HiveMQ 是一個可擴充套件的高效能 MQTT 代理,適用於關鍵任務部署。它完全支援 MQTT 3.1 和 MQTT 3.1.1,並具有 websockets,叢集和 Java 開發人員的開源外掛系統等功能。 |
WebsphereMQ / IBM MQ | Websphere MQ 是 IBM 的商業訊息中介軟體。完全支援 MQTT。 |