在深入学习Kafka之前,需要先了解topics, brokers, producers和consumers等几个主要术语。 下面说明了主要术语的详细描述和组件。
在上图中,主题(topic)被配置为三个分区。 分区1(Partition 1)具有两个偏移因子0
和1
。分区2(Partition 2)具有四个偏移因子0
,1
,2
和3
,分区3(Partition 3)具有一个偏移因子0
。replica 的id与托管它的服务器的id相同。
假设,如果该主题的复制因子设置为3
,则Kafka将为每个分区创建3个相同的副本,并将它们放入群集中以使其可用于其所有操作。 为了平衡集群中的负载,每个代理存储一个或多个这些分区。 多个生产者和消费者可以同时发布和检索消息。
Brokers
N
个代理中有N
个分区,则每个代理将有一个分区。Kafka Cluster - Kafka拥有多个经纪人称为Kafka集群。 Kafka集群可以在无需停机的情况下进行扩展。 这些集群用于管理消息数据的持久性和复制。