一些设计理论 #
CAP 理论 #
- C 代表一致性:分布式系统中数据的一致性
- A 代表可用性:分布式系统是否正常可用
- P 代表分区容器性:分布式系统中出现网络问题的容错性
- CAP 理论:分布式系统中不可能同时满足 C 和 A,即要么 CP 要么 AP
- 一致性和可用性只能取其一。需要数据强一致性就会损失可用性,需要可用性保证,就会损失强一致性
- 实际生产环境遵循 BASE 理论
BASE 理论 #
- BA:Basically Availiable,基本可用,允许一定程度的不可用,如系统故障导致请求时间变长或非核心部分不可用
- S:Soft state: 表示分布式系统可以处于一种中间状态,比如数据正在同步
- E:Eventually consistent: 最终一致性。不要求分布式系统数据实时一致,允许经过一段时间后一致,过程中系统也是可用的