对分布式CAP理论的理解

先把每个拆分得概念理解清楚,然后依赖一些生活场景加以联想,就好理解了
C(Consistency) 一致性:保证同一时间访问所有节点的数据都是一致的
A (Availability)可用性:在系统中一部分节点故障后,系统是否还能响应客户端的读写请求。
P (Partition tolerance)分区容错:系统不能在时限内达成数据一致性,就是发生了分区(以上是 Wiki 的解释)。由于计算机中没有百分百可靠的通信协议(通信原理、计算机网络的内容),所以系统内肯定会存在部分节点在时限内无法通信,而造成数据不一致的问题。所以 P 是肯定是满足的。

假设分布式系统中,由于 P 的客观存在,一个节点挂了(短时间内无法和系统内其他节点同步数据),而其他节点数据有更新。要满足一致性,必须等其他数据必须要同步数据到该节点,才允许客户端访问。要是满足可用性,系统在向客户端提供服务的时候,已经无法保证系统内的数据一致了。
综上,分布式系统 CAP 最多只能满足两个条件,其中 P 是必须有的,无法同时满足 CAP。

剩下有种情况 CA 也是讨论很多的,既然排除了 P,那系统需在时限内保证数据一致,那单体架构,单节点是最趋近于这种情况的了。那还要保证一致性,单节点就一份数据,完全一致。而可用性,要么继续服务,要么整个挂,至于单体架构是否高可用,就看你怎么界定了。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值