「一致性、可用性、分区容错三选二」是被误传最广的口号。CAP 真正说的是:当网络分区发生时,你必须在一致性和可用性之间二选一。而 BASE 是大规模系统给出的工程退让。
1. 先厘清三个字母
| 字母 | 全称 | 含义 |
|---|---|---|
| C | Consistency(一致性) | 所有节点在同一时刻看到同一份最新数据,等价于线性一致性 |
| A | Availability(可用性) | 每个到达非故障节点的请求,都能得到非错误的响应(不保证是最新数据) |
| P | Partition tolerance(分区容错) | 网络分区(节点之间消息丢失或延迟)时系统仍能继续运行 |
2026/10/11大约 5 分钟