文章目录
1 什么是kafka
kafka 是一个分布式的,分布订阅模式的消息队列.
2 组件概念
2.1 broker
kafka的节点,一个kafka节点就是一个broker
2.2 topic
topic就是数据主题,相当于给数据分类,不同的业务数据可以放到不同topic里面.
2.3 partition
一个topic可以有很多分区,一个topic的数据全集等于一个topic的所有分区的数据加起来.(分区和副本的区别就是,副本是分区的重复数据),每个分区的多个副本中都有一个leader.
2.4 producer
发送消息到kafka的客户端
2.5 consumer
取数据的客户端,每个消费者都要维护自己读取数据的offset。低版本0.9之前将offset保存在Zookeeper中,0.9及之后保存在Kafka的“__consumer_offsets”主题中。
2.6 Consumer Group
多个消费者可以组成一个消费者组.同一个消费者组订阅同一个topic,可以负载均衡,一个消费者的消费一个partition.
2.7 offset
每条消息的位置标识.用来定位.