CAP:分布式系统的核心约束
**CAP 定理** 是分布式系统的理论基石。它指出,任何分布式系统都无法同时满足以下三个特性,最多只能满足其中两个:
- **一致性 (Consistency):** 所有节点在同一时刻看到的数据是相同的。
- **可用性 (Availability):** 任何非故障节点都能及时响应请求。
- **分区容错性 (Partition Tolerance):** 系统在遇到网络分区故障时仍能正常工作。
由于网络分区(P)在大型分布式系统中是必然存在的,因此后端架构设计实际上是在 **C 和 A 之间进行权衡**:
- **CP (一致性优先):** 如 Redis 集群或某些关系型数据库,牺牲可用性来保证数据强一致性。
- **AP (可用性优先):** 如 Cassandra、一些 NoSQL 数据库,牺牲强一致性来保证高可用性,实现 **最终一致性**。
后端工程师必须根据业务对数据的敏感度来决定权衡。例如,金融交易系统通常选择 CP,而社交媒体动态则可以选择 AP。
评论区