MQTT(Message Queuing Telemetry Transport,消息队列遥测传输协议),是一种基于发布/订阅(publish/subscribe)模式的"轻量级"通讯协议。

Apache Kafka是分布式发布 - 订阅消息系统。

1 定义不同

mqtt 是一个协议。
kafka是一个系统。

因为mqtt 是一个协议,所以基于协议有不同的开源项目:如emqx等;有的开源项目增加了分布式集群的处理;
而kafka只有apache kafka一个项目。

2 应用领域不同

mqtt 应用于物联网数据采集。
kafka 应用于数据流处理。

3 范式相同

都是基于发布订阅范式。

在实际的物联网领域,可以mqtt 负责数据的上传;kafka负责收集到的数据分发给不同业务的服务器。

参考开源项目:
https://github.com/kaiwaehner/kafka-connect-iot-mqtt-connector-example

Logo

Kafka开源项目指南提供详尽教程,助开发者掌握其架构、配置和使用,实现高效数据流管理和实时处理。它高性能、可扩展,适合日志收集和实时数据处理,通过持久化保障数据安全,是企业大数据生态系统的核心。

更多推荐