首页 > 代码库 > Kafka基础知识
Kafka基础知识
1. kafka是一个分布式的消息发布-订阅队列。
2. 其中有一些主要的概念:
Topic: 就是对放入队列的消息进行分类,分类消息分开储存,比如现在有订单消息和用户投诉消息,则分成订单topic和投诉topic
Message: 放入消息队列的一条一条的消息。
Producer: 消息的生产者,就是往队列里放消息(Push)的客户端。
Consumer: 消息的生产者,就是从队列里取消息(Pull)的客户端。
Broker:对应kafka的一个服务器端,如果是分布式,则可以有多个Broker,多个之间通过Zookeeper来进行协调。
Partition: 分区,每个topic又可以分为多个Partition,每个Partition之间保存不同数据。
3. 每个Producer往Kafka放数据的时候,会按照一定算法,放到其中Broker中主题的对应分区里。
4. 每个消费者在进行消费的时候可以组成一个group,当进行消费的时候,某一个组中只有一个consumer可以拿到该条数据。
5. 每个分区只有一个leader服务器,其他的全是follower,Leader负责处理生成的消息读写,follower负责对其进行备份。
6. 某主题的某一个分区的消息只会被同一个Consumer消费,每次都是同一个,这样就保证了同一个分区中数据被消费的顺序,多次消费也是该Consumer。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。