CAP理论
- C:consistency(一致性)
- A:avalibility(可用性)
- P:Partition(分区)-tolerence to partition(分区容忍度)
图解CAP
- P【分区】
- A【可用性】
- C【一致性】
解释CAP
- 分区:一个分布式系统,网络不通讯,导致连接不通,系统被分割成几个数据区域
- 原因:数据不连通了,产生数据分区
- 影响
- 查还好一点
- 数据修改时,必须要求数据一致--加锁,实现数据一致性【需求要求数据一致性】
- 数据修改时,可以数据不一致--不用加锁【需求不要求数据一致性】
- 分区容忍度
- 数据的一致性要求高,容忍度高,加锁
- 数据的一致性要求低,容忍度低,可以不加锁
- 预期结果,保持数据的一致
- 可用性
- 请求在一定时间段内都应该有响应
- 为了解决锁一直加着
- CP理论:【一致性+分区】数据的一致性要求高-加锁
- AP理论:【可用性+分区】数据的一致性要求低-不加锁
CAP总结
- 分区是常态,可不避免,三者不可共存
- 可用性和一致性是一对冤家
- 一致性高,可用性低
- 一致性低,可用性高