【分布式事务系列】BASE理论

244 阅读1分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

如果是CA或者CAP这种情况,必须网络要百分之百可靠,否则当出现网络分区的情况时,为了保证数据的一致性,必须拒绝客户端的请求,但是如果拒绝了请求,就无法满足A,所以在分布式系统中不可能选择CA,因此只能有AP或CP两种选择。

  • AP: 对于AP来说,相当于放弃了强一致性,实现最终的一致性。是解决分布式数据一致性问题的主要选择。
  • CP:放弃了高可用性,实现强一致性,两阶段提交和三阶段提交都采用这种方案。可能导致的问题是用户完成一个操作会等待较长的时间。
BASE理论

BASE理论是由于CAP中一致性和可用性不可兼得而衍生出的一种新思想,BASE理论的核心思想是通过牺牲数据的强一致性来获取高可用性。

它有三个特性:

  • Basically Available(基本可用):分布式系统在出现故障时,允许损失一部分功能的可用性,保证核心功能的可用。
  • Soft State(软状态):允许系统中的数据存在中间状态,这个状态不影响系统的可用性,就是允许系统中不同节点的数据副本之间的同步存在延时。
  • Eventually Consistent(最终一致性):中间状态的数据在经过一段时间后,会达到一个最终的数据一致性。