主页

索引

模块索引

搜索页面

BASE

Basic Availability,Soft-state,Eventual Consistency
牺牲掉对一致性的约束(但实现最终一致性),来换取一定的可用性

BASE 理论是对 CAP 理论的延伸,核心思想是即使无 由故到强一致性,应用可以采用适合的方式达到最终一致性 。 eBay 的架构师丹·普里斯特( Dan Pritchett )通过对大规模分布式系统的实践总结,在 ACM 上发表文章提出 BASE 理论。 BASE 是指:

1. 基本可用( Basically Available)
    基本可用是指分布式系统在出现故障的时候,允许损失部分可用性,即保证核心可用。
    如: 服务限流和服务降级都是基本可用思想的具体体现
2. 软状态( Soft State)
    软状态是指允许系统存在中间状态,而该中间状态不会影响系统整体可用性。
    分布式存储中一般一份数据都会有若干个副本,允许不同节点间副本同步的延时就是软状态的体现
    关系型数据库中如 Mysql 的复制功能也是该思想的一种体现
3. 最终一致性( Eventual Consistency )
    最终一致性是指系统中的所有数据副本经过一定时间后,最终能够达到一致的状态
    CAP 的一致性就是强一致性,这种一致性级别是最符合用户直觉的,它要求:
      系统写入什么,读出来的也会是什么,用户体验好,但实现起来往往对系统的性能影响较大
    弱一致性和强一致性相反,弱一致性级别约束了系统:
      在写入成功后,不承诺立即可以读到写入的值,也不会承诺多久之后数据能够达到一致,
      但会尽可能地保证到某个时间级别(比如秒级别)后,数据能够达到一致状态
    BASE 中的最终一致性可以看作是弱一致性的一种特殊情况
https://img.zhaoweiguo.com/knowledge/images/theorys/cap_base.png

CAP 理论与 BASE 思想的关系

主页

索引

模块索引

搜索页面