Kafka是一种快速、可扩展的、高吞吐的、可容错的分布式“发布-订阅”消息系统,使用Scala与Java语言编写,能够将消息从一个端点传递到另一个端点。
Kafka对消息保存时根据Topic进行归类,发送消息者为生产者,消息接收者为消费者。
Kafka由Apache软件基金会开发,是LinkedIn于2010年12月开发的技术
Kafka的特点:
1、提供Pub/Sub方式的海量消息处理。
2、以高容错的方式存储海量数据流。
3、保证数据流的顺序。
4、对消息保存时根据Topic进行归类。
5、发送消息者称为Producer,消息接受者称为Consumer。
6、Kafka集群有多个kafka实例组成,每个实例(server)称为broker。
7、Kafka集群、producer和consumer都依赖于zookeeper集群保存一些meta信息,来保证系统可用性。
kafka和MQTT的区别
MQTT和Kafka是两个不同的协议,虽然它们都和发布/订阅范式有关,但是它们的应用场景和目标略有不同,具体区别如下:
Kafka是用来处理大数据的,侧重于对数据的存储和读取,它的消息传递机制更侧重于对数据流的处理,针对的是实时性比较高的流式数据处理场景。
MQTT是用来处理物联网的,侧重于客户端和服务器的通信,它的消息传递机制更侧重于对消息的传递和处理,针对的是大量物联网设备发来的消息做接收处理响应的场景。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70031464/viewspace-2964073/ ,如需转载,请注明出处,否则将追究法律责任。