这是我参与11月更文挑战的第6天,活动详情查看:2021最后一次更文挑战
定义
- CAP理论: CAP三个字母分别代表了分布式系统中三个相互矛盾的属性:
- Consistency: 一致性. 在CAP理论中的所说的副本一致性特别代指强一致性
- Availablity: 可用性. 在分布式系统中,即使系统在出现异常时仍然可以提供服务
- Tolerance to the partition of network: 分区容忍. 在分布式系统中,系统可以对网络分区这种异常情况进行容错处理
描述
- CAP理论指出,无法设计一种分布式协议,使得同时完全具备CAP三种属性:
- 协议下的副本始终是强一致性
- 服务始终是可用的
- 协议可以容忍任何网络分区异常
- 分布式系统协议只能在CAP这三者之间折中
意义
- CAP理论的意义:
- 明确提出不要妄图去设计一种对CAP三大属性都完全拥有的完美系统
- 这种系统在理论上就已经被证明是不存在的
分布式系统协议
Lease机制
- Lease机制牺牲了部分异常情况下的A(可用性), 从而获得了完全的C(一致性) 和很好的P(分区容忍)
Quorum机制
- Quorum机制在CAP三大因素中都各自做了折中,有一定的C(一致性), 有较好的A(可用性), 也有较好的P(分区容忍). 是一种较为平衡的分布式协议
两阶段提交协议
- 两阶段提交系统具有完全的C(一致性), 很差的A(可用性) 以及很差的P(分区容忍)
Paxos协议
- 同样是强一致性协议 ,Paxos在CAP三方面较两阶段提交协议要更好
- Paxos具有完全的C(一致性), 较好的A(可用性) 以及较好的P(分区容忍)
- Paxos的A(可用性) 和 P(分区容忍) 的属性和Quorum机制类似,因为Paxos协议本身就具有Quorum机制的因素