BASE理论
BASE是Basically Available(基本可用)、Soft state(软状态)和Eventually consistent(最终一致性)
BA 基本可以,S 柔性事务,E最终一致性 BASE理论通过牺牲强一致性,保证最终一致性,提高可用性。
BASE理论是对CAP中一致性和可用性权衡的结果,其来源于对大规模互联网系统分布式实践的总结,是基于CAP定理逐步演化而来的。BASE理论的核心思想是:即使无法做到强一致性,但每个应用都可以根据自身业务特点,采用适当的方式来使系统达到最终一致性。
BA 基本可用
- 响应时间上的损失: 正常情况下,处理用户请求需要 0.5s 返回结果,但是由于系统出现故障,处理用户请求的时间变为 3 s。
- 系统功能上的损失:正常情况下,用户可以使用系统的全部功能,但是由于系统访问量突然剧增,系统的部分非核心功能无法使用。如双11,对一些非核心链路的功能做降级处理,如暂时关闭商品评论功能。
S 柔性事务 软状态
数据同步允许一定的延迟。允许存在中间状态,这个中间状态不影响系统的整体可用性。 比如读写分离,主库同步到从库会有一定延迟,其实就是一种柔性状态。
E最终一致性
在最终的状态中,数据是一致的。 系统中所有的数据副本,在经过一段时间的同步后,最终能够达到一个一致的状态,不要求实时。比如MQ实现柔性事务,应对更大的并发流量。