CAP理论和BASE理论

CAP理论

Consistency(一致性)

即更新操作成功并返回客户端后,所有节点在同一时间的数据完全一致。
对于客户端来说,一致性指的是并发访问时更新过的数据如何获取的问题。
从服务端来看,则是更新如何复制分布到整个系统,以保证数据最终一致。

Availability(可用性)

即服务一直可用,而且是正常响应时间。系统能够很好的为用户服务,不出现用户操作失败或者访问超时等用户体验不好的情况。

Partition Tolerance(分区容错性)

即分布式系统在遇到某节点或网络分区故障的时候,仍然能够对外提供满足一致性和可用性的服务。分区容错性要求能够使应用虽然是一个分布式系统,而看上去却好像是在一个可以运转的整体。比如现在的分布式系统中有某一个或者几个机器宕机了,而剩下的机器还能够正常运转满足系统需求,对于用户而言并没有什么体验上的影响。

CP和AP:分区容错性是必须保证的,当发生网络分区的时候,如果要继续服务,那么强一致性和可用性只能二选一

BASE理论

BASE理论值的是基本可用 Basically Available,软状态 Soft State ,最终一致性 Eventual Consistency,核心思想是即使无法做到强一致性,但应该采用合适的方法保证最终一致性。

BA:Basically Available 基本可用,分布式系统再出现故障的时候,允许损失部分可用性,即保证核心可用。
S:Soft State 软状态,允许系统存在中间状态,而该中间状态不会影响系统整体可用性。
E:Eventual Consistency 最终一致性,系统中的所有数据副本经过一定时间后,最终能够达到一致的状态。

BASRE理论本质上是对CAP理论的延伸,是对CAP中AP方案的一个补充。

posted @ 2021-06-03 20:36  刘指导  阅读(87)  评论(0编辑  收藏  举报