第 3 章 关于 Kafka
Apache Kafka 是一个开源分布式发布订阅消息传递系统,用于容错实时数据源。
有关 Apache Kafka 的更多信息,请参阅 Apache Kafka 文档。
3.1. Kafka 如何作为消息代理运行 复制链接链接已复制到粘贴板!
复制链接链接已复制到粘贴板!
要最大化使用 AMQ Streams 的经验,您需要了解 Kafka 如何作为消息代理运行。
Kafka 集群由多个代理组成。代理包含接收和存储数据的主题。主题按分区分割,分区中写入数据。分区在主题之间复制,以进行容错。
Kafka 代理和主题
- Broker
- broker(代理)有时被称为服务器或节点,编配存储并传递信息。
- Topic
- 主题提供数据存储的目的地。每个主题都被分成一个或多个分区。
- 集群
- 一组代理实例。
- 分区
- 主题分区的数量由主题 分区计数 来定义。
- 分区领导
- 分区领导机处理主题的所有制作者请求。
- 分区跟踪器
分区遵循复制分区领导分区数据(可选)处理消费者请求。
主题使用 复制因素 来配置集群中各个分区的副本数。主题至少包含一个分区。
in-sync 副本的数量与领导数相同。配置用于定义有多少副本必须同步时才能生成消息,确保只有在消息成功复制到副本分区后才会提交消息。这样,如果领导机失败,消息就不会丢失。
在 Kafka 代理和主题 图中,可以看到每个编号的分区都有一个领导分区,在复制的主题中有两个因素。