DevOps专业术语
CAP Theorem
CAP 定理 · 分布式系统的不可能三角
数据库网络
CAP-
- 定义
- CAP Theorem是DevOps领域的专业术语。CAP 定理指出分布式系统在网络分区发生时,只能在一致性(C)和可用性(A)之间二选一。
最后更新:2026-03-18
什么是CAP Theorem?
CAP 定理指出分布式系统在网络分区发生时,只能在一致性(C)和可用性(A)之间二选一。这是理解分布式数据库设计取舍的基础理论。
- 分布式系统的基础理论
- C/A/P 三者最多满足两个
- 网络分区时必须在 C 和 A 间取舍
CAP Theorem详解
CAP 定理由 Eric Brewer 在 2000 年提出:Consistency(一致性,所有节点看到相同数据)、Availability(可用性,每个请求都能得到响应)、Partition Tolerance(分区容错,网络分区时系统仍能运行)。由于网络分区不可避免,实际选择是 CP(如 ZooKeeper)或 AP(如 Cassandra)。现代系统通常在不同操作上做不同的 CAP 取舍。
CAP Theorem的应用场景
正式定义
分布式系统中一致性、可用性和分区容错性最多同时满足两个的定理
应用场景
- 分布式数据库的设计决策
- 微服务架构的一致性策略
- 系统可用性和数据一致性的权衡
常见误区
- CAP 不是说只能选两个,是网络分区时在 C 和 A 间选
- CAP 是理论上限,实际系统可以在不同操作上做不同取舍
- CAP 不考虑延迟,PACELC 定理是更完整的模型
实际案例
📌 CAP 的实际应用
DynamoDB 选择 AP(高可用优先),ZooKeeper 选择 CP(一致性优先),大多数系统根据业务场景在不同操作上做不同的 CAP 取舍。
CAP Theorem的参考来源
关于CAP Theorem的常见问题
- CAP 定理说的是什么
- 分布式系统最多同时满足一致性(C)、可用性(A)、分区容错(P)中的两个,网络分区时必须在 C 和 A 之间选择。
- CAP 定理在实际中怎么用
- 大多数系统选择 AP(高可用+最终一致)或 CP(强一致+可能不可用),根据业务需求权衡。