CAP定理

什么是CAP?

分布式系统有三个指标:一致性,可用性和分区容错性,这三个指标不可能同时达到,只能保证其中的两个(CP/AP)称为CAP定理.

Consistency:

一致性:客户端的读操作能保证返回的数据一定是最新的,如下图:

客户端向服务端1写数据 x1,之后再向服务端1读数据返回x1,符合数据的一致性,客户端也可能向服务端2读数据,服务端2可能还没有同步数据返回x,为了保证一致性,服务端1需要向服务端2写数据以同步数据,服务端2应该在数据同步之前返回error,这就不能保证可用性,这里也体现出了一致性和可用性两者是不可兼得的,因此只能有CP和AP两种组合。

Availability:

可用性:客户端的请求一定要在合理的时间内返回合理的响应,如下图:

客户端向服务端1写数据 x1,之后再向服务端1读数据返回x1,客户端也可能向服务端2读数据,服务端2可能还没有同步数据返回x,这就不能保证一致性。

Partition tolerance

分区容错性:分布式系统分布在多个子网中,每个子网络就叫做一个分区,当一个子网络发生故障或网络之间通信发生故障如拥塞、中断、丢包之后,即一台服务器宕掉之后,系统仍可以提供正常的服务,这个必成立。

场景

根据不同的业务场合选择不同的组合:比如更新版本的时候需要一个个更新,这时候对一致性要求就不需要那么高,新旧版本都可以用;但比如转账的时候对数据一致性就比较高。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值