分布式 CAP、BASE理论

CPA

CAP理论是 分布式计算领域的公认定理
CAP定律说的是在一个分布式计算机系统中,一致性,可用性和分区容错性这三种保证无法同时得到满足,最多满足两个。

CAP:
C:(Consistency)一致性 :
在写操作完成之后的任何读操作都必须返回该值
A:(Availability)可用性 :
非失败节点收到的每个请求都必须导致响应 在可用性系统中,只要服务器没有奔溃,客户端发
送请求,服务器必须返回一个相应给客户端。用户角度来看就是不会出现系统操作失败或者访
问超时等问题。
P:(Partition Tolerance)分区容错性 :
网络允许丢失任意多的消息从一个节点发送到另外一个节点

例如:有一个客户端client和两台服务器G1,G2
一致性:
① client向G1发起写操作 得到写操作更改之后的值 即为一致性
② client向G1发起写操作 还没得到写操作更改之后的值便向G2发起读操作,
这时如果G1已向G2发送同步消息,则client得到写操作更改之后的值 保证了一致性
但是如果还未完成同步就就拿不到之前写操作更改之后的值 就不能保证一致性

可用性:任何时候都需要保证服务的可用和稳定。

分区容错性:其中一台服务器出问题 另外的服务器能保证正常运转

大部分情况下能保证可用性和分区容错性,对于一致性很难保证。

BASE

BASE理论是对CAP理论的延伸,核心思想是即使无法做到强一致性(StrongConsistency,CAP的一致性就是强一致性),但应用可以采用适合的方式达到最终一致性(Eventual Consitency)。

(Basically Available)基本可用
在分布式系统出现故障的时候,允许损失部分可用性,即保证核心可用。

(Soft State)软状态
接受一段时间的状态不同步,及中间状态,而改中间状态不影响系统整体可用性。这里的中间状态就是CAP理论中的数据不一致性。

(Eventually Consistent)最终一致性
上面说软状态,然后不可能一直是软状态,必须有个时间期限。在期限过后系统能够保证在没有其他新的更新操作的情况下,数据最终一定能够达到一致的状态,因此所有客户端对系统的数据访问最终都能够获取到最新的值。

CAP是分布式系统设计理论,BASE是CAP理论中AP方案的延伸,对于CPA中始终无法很好保证的一致性,采用的方式和策略就是保证最终一致性,以牺牲部分AP来实现C的最终一致性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值