概念介绍
Produce :消息队列生产者,想kafka的topic发送消息的进程/代码/服务
Comsumer:消息队列消费者,订阅数据(topic)并处理其发布的消息的进程/代码/服务
Comsumer Group :逻辑概念,对于同一topic,会广播给不同的group,一个group中,只有一个consumer可以消费该消息
Broker:物理概念,kafka集群中每个kafka节点
Topic:逻辑概念,kafka消息的类型,对数据进行区分和隔离
Partition:物理概念,Kafka下数据存储的基本单元,一个Topic数据会被拆分成多个Partition,每个partition是有序的。
消费者数目小于等于Partition数目。broker group:中的每一个broker保存topic的一个或者多个partitions。
Consumer Group 中的仅有一个Consumer读取topic的一个或者多个partitions,并且是唯一的consumer。
Replication:同一个partition可能会有多个replication,多个replica之间数据是一样的,系统默认副本数是一个副本。
broker挂掉的情况下,系统可以主动是replicas提供服务。特点:replication的基本单元是topic的partiton,所有的读,写都是
leader进,followers只是作为备份,followers必须能够及时复制leader的数据,增加容错性和可扩展性。
Replication Leader:一个Partition的多个Relication上,需要一个Leader负责该Partition上与Produce与Consumer交互
ReplicaManager:负责管理当前broker所有分区和副本信息,处理kafkaController发起的一些请求,副本状态的切换,添加/读取消息等。
Kafka基本结构