架构

Alauda Streaming Service for Kafka 利用 Kafka 的分布式架构,提供经过验证的高可用解决方案,满足企业对高吞吐量、可靠且弹性可扩展的消息队列系统的需求。

ZooKeeper 协调模式

ZooKeeper 协调模式是 Kafka 传统的分布式协调实现,使用 ZooKeeper 集群管理 Kafka 集群元数据、Broker 注册和控制器选举等核心功能。该模式具有以下特点:

  • 成熟稳定:在大规模生产环境中验证,具有极高的可靠性。
  • 职责分离:ZooKeeper 专注于集群协调,Kafka Broker 专注于消息处理。
  • 自动故障转移:通过 ZooKeeper 的 watcher 机制实现控制器自动选举。
  • 元数据管理:存储主题分区信息和消费者偏移量等关键元数据。
  • 扩展依赖:需要额外维护 ZooKeeper 集群,增加运维复杂度。

kafka zk arch

KRaft 模式

KRaft 模式是 Kafka 下一代的元数据管理系统,用 Kafka 原生的基于 Raft 的共识协议替代 ZooKeeper。该模式具有以下特点:

  • 架构简化:消除外部 ZooKeeper 依赖,降低运维复杂度。
  • 扩展性增强:支持更多分区(可达百万级,远超 ZooKeeper 模式的数十万级)。
  • 更快的控制器故障转移:实现亚秒级故障转移,显著优于 ZooKeeper 的多秒级延迟。
  • 更强的一致性:保证线性一致的元数据操作,提供比基于 ZooKeeper 的最终一致性更强的一致性保障。
  • 灵活部署:支持合并模式(统一进程同时作为 Broker 和控制器,适合小型集群)和专用模式(控制器和 Broker 进程分离,适合大规模部署)。

kafka kraft arch