HiveMQ Kafka 解決方案
將物聯網數據和MQTT 消息流式傳輸到Kafka
Apache Kafka是一個流行的開源流媒體平台,可以輕鬆地在企業系統和應用程序之間共享數據。HiveMQ Enterprise Extension for Kafka使得使用Kafka 集群發送和接收IoT 設備數據成為可能。
新增功能: HiveMQ Cloud 現在與Confluent Cl o ud集成,可以輕鬆地將IoT 數據流式傳輸到Confluent Cloud 中。
HiveMQ 和Kafka 架構
HiveMQ 透過將MQTT 消息無縫集成到Kafka 消息傳遞流中,解決了Kafka for IoT 的問題。相反,Kafka 消息可以分發到HiveMQ 和MQTT 客戶端。HiveMQ 代理已擴展為包含Kafka 協議的本機實現。這允許HiveMQ 將MQTT 消息轉置到Kafka 協議中,反之亦然。我們的架構允許對物聯網數據進行全面的MQTT 支持,並與Kafka 完全集成。
為什麼物聯網需要HiveMQ和MQTT
Kafka 非常適合在企業系統和位於數據中心或云中的應用程序之間共享數據。但是,對於物聯網,Kafka不適合的原因有很多:
Kafka 代理需要由客戶端直接尋址,而對於透過負載均衡器連接的IoT 設備,情況並非如此。
Kafka客戶端需要穩定的IP連接,而通過不可靠的蜂窩網絡連接的物聯網設備並不總是如此。
Kafka不支持大量主題,因此具有大型主題空間的大型物聯網部署通常不適合Kafka。
Kafka 客戶端很複雜且資源密集,因此較小的受限IoT 設備通常無法運行Kafka 客戶端。
詳細功能
1. 實現Kafka 協議,以便可以將MQTT 消息寫入Kafka 主題,相反,可以將Kafka 消息分發到多個MQTT 客戶端。 |
2. 支持所有MQTT 3 和MQTT 5 功能,包括所有QoS 級別 |
3. 為每個Kafka 主題選擇多個MQTT 主題篩選器(MQTT 主題篩選器完全支持MQTT 通配符)。 |
4. 在代理處緩衝消息,以確保在Kafka 集群不可用時的高可用性和容錯能力。 |
5. 監視在HiveMQ 控制中心上寫入Kafka 的MQTT 消息。 |
6. 將Kafka 消息分發到多個MQTT 客戶端 |
7. 將一個到多個Kafka 主題映射到多個MQTT 主題。 |
8. 編程自定義API,用於指定MQTT 到Kafka 主題映射和自定義消息轉換。 |
9. MQTT PUBLISH 數據包可以在運行時動態生成,並使用部分Kafka 消息替換變量 |
10. 在架構註冊表的幫助下驗證從Kafka 讀取的消息 |
11. 使用預定義的缺省配置或以配置方式設置MQTT PUBLISH 元數據的可能性 |