异地多活架构
异地多活是最高等级的可用性架构——多个地理位置独立的数据中心同时提供服务。
多活架构的特点
多活架构的挑战
本章总结
核心要点:
- 多活是最高等级架构:多地同时服务,故障自动切换
- 数据一致性是最大挑战:需要权衡 CAP
- 成本非常高:只适合关键业务
异地多活是最高等级的可用性架构——多个地理位置独立的数据中心同时提供服务。
flowchart LR
subgraph 区域 A
A1["用户"] --> A2["接入层"]
A2 --> A3["应用层"]
A3 --> A4["数据层"]
end
subgraph 区域 B
B1["用户"] --> B2["接入层"]
B2 --> B3["应用层"]
B3 --> B4["数据层"]
end
A4 <-->|"数据同步"| B4| 特点 | 说明 |
|---|---|
| 多地同时服务 | 所有区域都处理用户请求 |
| 数据实时同步 | 数据在各区域间同步 |
| 故障自动切换 | 区域故障自动切换到其他区域 |
| 用户体验一致 | 用户无感知区域差异 |
| 挑战 | 说明 |
|---|---|
| 数据一致性 | CAP 定理的权衡 |
| 跨区域延迟 | 用户访问远端区域会有延迟 |
| 冲突解决 | 并发写入冲突需要解决 |
| 成本高 | 需要多个完整的数据中心 |
核心要点: