Kafka进阶
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 Kafka的体系架构

学习Kafka消息系统,十分重要的是掌握它的核心架构及其运行机制。本节将详细介绍Kafka的核心架构、基本概念,并在此基础上继续介绍Kafka的安装与部署。

Kafka消息系统是一个典型的分布式系统,其组成部分包括:消息生产者、消息消费者、消息服务器及分布式协调服务ZooKeeper。一个典型的Kafka消息系统的集群架构如图1.6所示。

图1.6 Kafka消息系统的集群架构

下面我们来列举一些Kafka中的术语,这些术语对我们学习并掌握Kafka的内容非常重要。

• Broker:Kafka集群包含一个或多个服务器,这种服务器被称为Broker。

• Topic:每条发布到Kafka集群的消息都有一个类别,这个类别被称为Topic(可以理解为队列或目录)。物理上不同Topic的消息分开存储,逻辑上一个Topic的消息虽然保存于一个或多个Broker,但用户只需指定消息的Topic即可生产或消费数据而不必关心数据存于何处。

• Partition(分区):Partition是物理上的概念(可以理解为文件夹),每个Topic包含一个或多个Partition,即同一个分区可能存在多个副本。

• Producer:它负责将消息发布到Kafka Broker。

• Consumer:它向Kafka Broker读取消息的客户端。

• Consumer Group(消费者组):每个Consumer属于一个特定的Consumer Group(可为每个Consumer指定Group Name,若不指定group name则属于默认的Group)。

下面我们分别对这些术语进行介绍。