Kafka架构

1、Producer(生产者):负责将消息发布到 Kafka 集群。生产者将消息按照指定的主题(topic)进行发送,并且可以选择将消息发送到特定的分区(partition)
2、Topic(主题):消息在 Kafka 中以主题的形式组织和分类。每个主题可以有多个分区,以便实现消息的水平扩展和并行处理。
3、Partition(分区):主题可以被划分为多个分区,每个分区是一个有序的、不可变的消息序列。分区允许数据在集群中进行分布式存储和处理,同时也支持并行处理和提高系统的吞吐量。
4、Consumer(消费者):消费者是从 Kafka 集群获取消息的客户端。消费者可以以消费者组的形式进行组织,也可以以单独的消费者形式存在。消费者从指定的分区中读取消息,并且可以控制消息的消费位置、偏移量等。
5、Consumer Group(消费者组):消费者组是一组共享相同消费者组 ID 的消费者的集合。每个消费者组可以订阅一个或多个主题,并且每个分区只能被同一个消费者组中的一个消费者进行消费。Kafka 会自动进行分区的负载均衡,以确保消费者组中的消费者能够共同消费所有分区中的消息。
6、Broker(代理):Kafka 集群中的每个节点都被称为代理。代理负责存储和管理消息,同时也负责处理生产者和消费者的请求。多个代理组成一个 Kafka 集群,集群中的代理通过 ZooKeeper 进行协调和领导选举。
7、ZooKeeper:ZooKeeper 是一个分布式协调服务,Kafka 使用 ZooKeeper 来管理和协调 Kafka 集群中的各个组件。ZooKeeper 负责维护集群的元数据、负载均衡、故障恢复等重要的协调工作。

以上是 Kafka 的基本架构,通过这些组件的协作,Kafka 实现了高可靠性、高吞吐量的分布式消息传递系统。

你可能感兴趣的:(kafka,架构,分布式)