🗳️ ZAB 协议
ZAB 协议原理;消息广播;崩溃恢复;Leader 选举;数据同步。
第1阶段 ZAB协议 → 消息广播、崩溃恢复第2阶段 Leader选举 → FLE、投票逻辑第3阶段 应用场景 → 配置管理、命名服务第4阶段 分布式锁 → 锁类型、红锁 ZooKeeper │ ┌───────────┬─────────────┴─────────────┐ ▼ ▼ ▼ ▼ ZAB协议 Leader选举 应用场景 分布式锁 │ │ │ │• 消息广播 • FLE • 配置管理 • 排它锁• 崩溃恢复 • 投票逻辑 • 命名服务 • 羊群效应• 数据同步 • 选主流程 • Master选举 • 公平锁• 原子广播 • 脑裂问题 • 分布式队列 • 红锁| 专题 | 考察频率 | 难度 | 核心能力 |
|---|---|---|---|
| ZAB协议 | ★★★★☆ | 高 | 消息广播 |
| Leader选举 | ★★★★☆ | 高 | 选举机制 |
| 应用场景 | ★★★☆☆ | 中 | 场景选择 |
| 分布式锁 | ★★★★☆ | 中 | 锁实现 |
🗳️ ZAB 协议
ZAB 协议原理;消息广播;崩溃恢复;Leader 选举;数据同步。
🏆 Leader 选举
选举机制;Fast Leader Election;投票逻辑;选主流程;脑裂问题。
📦 应用场景
配置管理;命名服务;分布式锁;Master 选举;分布式队列。
🔒 分布式锁
锁类型;实现原理;羊群效应;公平锁;红锁算法。
⚡ 性能与优化
读写性能;存储优化;客户端优化;集群规划;监控告警。
ZooKeeper = 分布式系统的"小作坊"────────────────────────────────- 配置管理:集中式配置中心- 命名服务:服务注册与发现- 分布式锁:协调多进程访问- Master 选举:选主控制器- 分布式队列: FIFO 任务调度┌─────────────────────────────────────────────────────────────┐│ ZooKeeper 集群 │├─────────────────────────────────────────────────────────────┤│ ││ ZooKeeper Server ││ ┌─────────┐ ┌─────────┐ ┌─────────┐ ││ │ Leader │ │Follower │ │Observer │ ││ │ (主) │◄─┼─接受命令─┼─│ (只读) │ ││ │ 处理写 │ │ 同步数据 │ │ 不参与 │ ││ └─────────┘ └─────────┘ └─────────┘ ││ │ │ │ ││ └─────────────┴─────────────┘ ││ │ ││ ▼ ││ ┌─────────────┐ ││ │ 客户端 │ ││ └─────────────┘ ││ │└─────────────────────────────────────────────────────────────┘| 角色 | 职责 | 数量 |
|---|---|---|
| Leader | 处理所有写请求,事务提案 | 1 |
| Follower | 参与选举,处理读请求,转发写请求 | N |
| Observer | 不参与选举,只提供读服务 | N |
第1天 ZAB 协议 → 理解消息广播和崩溃恢复第2天 Leader 选举 → 掌握选举流程和数据同步第3天 应用场景 → 配置管理、分布式锁、选主第4天 分布式锁实现 → 手写分布式锁,理解红锁第5天 性能优化 → 集群规划、客户端优化