Kafka采用显式分布式架构,核心组件包括Producer(生产者)、Broker(Kafka集群)和Consumer(消费者)。

生产者(Producer):负责将消息发布到Kafka集群的指定主题(Topic),每个主题可划分为多个分区(Partition)。

主题与分区

  • Topic:消息的逻辑容器,通常按业务进行区分
  • Partition:有序且不可变的消息序列,每个主题可包含多个分区

消费者(Consumer):从集群消费消息,并通过提交偏移量(Offset)来保证消息处理的顺序性和一致性。

关键概念

  • Offset:分区中消息的位置标识,单调递增且不可变
  • Kafka集群:由多个Broker节点组成的分布式系统,通过存储分区副本来实现高可用和容错

集群架构

  • 集群包含多个Broker节点(如Broker1/2/3)
  • 每个分区设有一个Leader和多个Follower副本
    • Leader处理读写请求
    • Follower作为备份,在Leader故障时自动接替
    • 确保系统的高可用性和容错能力

ZooKeeper

  • 提供分布式协调服务
  • 维护集群状态和元数据(主题/分区分配等)
  • 注:0.9版本后消费者偏移量改由内部topic存储
Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐