别再简单地说数据库是CP还是AP了

CAP定理是计算机科学中最著名的概念之一,但也是被误解最多的 👇
📌 三个保证
- 一致性(C)— 所有客户端看到相同数据
- 可用性(A)— 任何请求都能得到响应
- 分区容错(P)— 网络分区时系统继续运行
📌 常见误解
❌ “三选二”的说法过于简化
- 选数据库不能只看CAP分类
- 选Cassandra做聊天不是因为它是AP,而是它有很多适合聊天消息存储的特性
❌ CAP只禁止了很小一部分设计空间
- “在分区(罕见情况)下同时保证完美可用性和一致性”
❌ CAP讨论的是100%可用性和一致性
- 更现实的讨论是:没有网络分区时,延迟和一致性之间的权衡(参见PACELC定理)
💡 CAP定理有用,但只是故事的一部分。选数据库时需要更深入的分析。
#CAP定理 #分布式系统 #数据库 #系统设计 #程序员 #技术干货