简述CAP理论,BASE理论

简介: 简述CAP理论,BASE理论

CAP(consistency,availability,partition-tolerance)


  • 数据一致性(consistency):如果系统对一个写操作返回成功,那么之后的读请求都必须读到这个新数据;如果返回失败,那么所有读操作都不能读到这个数据,对调用者而言数据具有强一致性(strong consistency)


  • 服务可用性(availability):所有读写请求在一定时间内得到响应,成功,错误,超时,不会一直等待
  • 分区容错性(partition-tolerance):在网络分区的情况下,被分隔的节点仍能正常对外服务


如果选择了 CA 而放弃了 P,那么当发生分区现象时,为了保证 C,系统需要禁止写入,当有写入请求时,系统返回 error(例如,当前系统不允许写入),这又和 A 冲突了,因为 A 要求返回 no error 和no timeout。因此,分布式系统理论上不可能选择 CA 架构,只能选择 CP 或者 AP 架构。

BASE理论(Basically Available,Soft State,Eventually Consistent)


BASE理论是CAP理论的一种妥协,由于CAP只能二取其一(因为必须保证P),BASE理论降低了发生分区容错时对可用性和一致性的要求


基本可用(Basically Available,):允许可用性降低(可能响应延长、可能服务降级),

软状态(Soft State):指允许系统中的数据存在中间状态,并认为该中间状态不会影响系统整体可用性。

最终一致性(Eventually Consistent):节点数据同步可以存在时延,但在一定的期限后必须达成数据的一致,状态变为最终状态


服务降级:比如一个网页有图片+描述,如果服务降级,那么先把最重要的描述信息发送给client,图片再慢慢传,这就是服务降级


目录
相关文章
CAP 理论 —最通俗易懂的解释
CAP 理论是分布式系统的一个基础理论,它描述了任何一个分布式系统最多只能满足以下三个特性中的两个: 1:一致性(Consistency) 2:可用性(Availability) 3:分区容错性(Partition tolerance) CAP 理论听起来十分抽象,本文尝试以生活中的例子并用通俗易懂的语言来解释 CAP 理论的含义。
2388 0
|
5月前
|
存储 NoSQL 关系型数据库
什么是 CAP 理论和 BASE 理论,看这一篇就够了
什么是 CAP 理论和 BASE 理论,看这一篇就够了
120 12
|
9月前
|
Nacos
分布式理论:CAP理论 BASE理论
分布式理论:CAP理论 BASE理论
63 2
|
9月前
|
缓存 运维 分布式计算
浅述CAP以及BASE理论
浅述CAP以及BASE理论
87 3
|
Nacos
【分布式】分布式基础 CAP理论 & BASE 理论
【分布式】分布式基础 CAP理论 & BASE 理论
127 0
|
Java 关系型数据库 大数据
简述 CAP 定理【重要】
简述 CAP 定理【重要】
98 0
|
数据库 搜索推荐 关系型数据库
CAP和BASE理论
CAP CAP是一个已经经过证实的理论:一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三项中的两项。
12539 0
|
搜索推荐 NoSQL 关系型数据库
分布式CAP理论和BASE理论
对于分布式系统的项目,使用中没有强制要求一定是CAP中要达到某几种,具体根据各自业务场景所需来制定相应的策略而选择适合的产品服务等。例如:支付订单场景中,由于分布式本身就在数据一致性上面很难保证,从A服务到B服务的订单数据有可能由于服务宕机或其他原因而造成数据不一致性。因此此类场景会酌情考虑:AP,不强制保证数据一致性,但保证数据最终一致性。
194 0
分布式CAP理论和BASE理论
|
分布式计算 Dubbo NoSQL