架构师训练营 - 第 6 周课后作业 -CAP 原理
CAP原理指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)最多只能同时实现两点,不可能三者兼顾。
一致性(C):
在分布式系统中有节点访问同一份最新的数据副本.
可用性(A):
在集群中一部分节点故障后,集群整体还能响应客户端的能力.
分区容忍性(P):
系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择。
在分布式环境下,网络故障和网络延迟是一定会发生的,在分布式系统要满足分区容忍性的前提下,可用性和一致性的无法同时满足,所以分布式系统就是两者进行取舍的过程;
AP(可用性+容忍性):保证服务的可用行,数据保证最终一致,短时间内可以获取不是最新的数据.常见的有Eureka
CP(一致性+容忍性): 保证数据的强一致性,允许一段时间内不可用,如银行系统,常见的有zookeeper.
BASE是Basically Available(基本可用)、Soft state(软状态)和Eventually consistent(最终一致性),是对CAP中一致性和可用性权衡的结果. 分布式系统出现故障时,保证数据的最终一致性,允许损失部分可用性。
评论