架构师训练营第六周作业 1
请简述CAP原理。
在进行分布式系统设计的时候,一个理想的分布式系统,需要满足一致性,高可用,和分区容忍性。但是在现实中,无法同时兼顾这三者。CAP原理将的就是这个事情。CAP是指Consistency,Availability和PartitionTolerance。CAP原理指出,这三个要素最多只能同时实现两点,不可能三者兼顾。在进行分布式架构设计时,必须作出取舍。对于分布式系统,分区容忍性是最基本的要求,所以只能在一致性和可用性之间取一个平衡。
当分布式系统中,当其中的一个服务器宕机的时候,如果这个时候需要高可用,那么向宕机服务器的读操作必定返回的不是正确的数据,这样就违背了一致性。如果要实现一致性,那么这个宕机的服务器只能返回错误或者无法访问,那么就违背了高可用。
考虑到用户体验,现实系统经常采用最终一致性,就是在一定的时间窗口内,允许数据有不一致性性,但是数据会达到最终一致性。
评论