一、Pulsar 核心原理
Pulsar 的架构和工作机制是理解其运维的前提,核心可拆解为 “分层架构”“数据流转” 和 “关键特性” 三部分。
1. 核心分层架构
Pulsar 采用 “计算与存储分离” 的分层设计,这是它区别于 Kafka 的关键,也是运维中资源调度的核心依据。
- 服务层(Service Layer):由 Broker 节点组成,负责接收客户端请求(生产 / 消费消息)、消息路由和负载均衡,无状态设计使其可快速扩缩容。
- 存储层(Storage Layer):由 BookKeeper 集群(分布式日志存储)组成,负责持久化存储消息。每个消息 Topic 会被拆分为多个 Partition,每个 Partition 的消息分散存储在不同的 BookKeeper 节点(Bookie)上,保证数据可靠性。
- 元数据层(Metadata Layer):由 ZooKeeper(或 etcd)负责,存储 Pulsar 的元数据(如 Topic 配置、Broker 节点信息、分区分配情况),是集群的 “大脑”。
2. 数据流转机制
以 “生产者发消息→消费者收消息” 为例,核心流程如下:
- 生产者(Producer)连接任意 Broker,请求创建 / 发送消息到指定 Topic;
- Broker 根据 Topic 的分区规则(如哈希、轮询),将消息路由到对应 Partition 的 “主 Bookie”;
- 主 Bookie 将消息持久化,并同步到多个 “从 Bookie”(默认 3 副本),确保数据不丢失;
- 消费者(Consumer)订阅 Topic 后,Broker 会将该 Topic Partition 的消息推送给消费者(或消费者拉取),并记录消费进度(Cursor,类似 “偏移量”)。
3. 关键特性原理
- 多租户<


7722

被折叠的 条评论
为什么被折叠?



