第 6 周 - 作业 2- 总结
CAP原则中C是一致性,A是可用性,P是分区容忍性,分布式系统最多只能满足CAP原则中的2个。分布式应用一般由多个节点组成,首先系统运行中硬件或者网络的故障是不可避免的。所以系统必须要满足分区容忍性,要想在硬件或网络故障时系统依然可以对外提供服务,就要有冗余节点或者备份节点去备份多份数据。
当备份节点对外提供读服务,主节点对外提供读写服务时,备份节点需要不断的同步主节点的数据,以抱持数据的一致性。
当客户端访问备份节点的某个数据时,正好这条数据备份节点还没有从主节点同步成功,若备份节点阻塞读请求,待同步完成再响应,虽然保证了数据的强一致性,但是可用性将受损,若备份节点直接返回旧数据给客户端可用性得到了保障,但是损失了数据一致性。
所以在设计分布式系统时,需要根据实际需求考虑对AC的侧重点,是要在一致性上做高保证还是在可用性上做高保证。
版权声明: 本文为 InfoQ 作者【seng man】的原创文章。
原文链接:【http://xie.infoq.cn/article/4b2f516cba4accd6bfa739b63】。未经作者许可,禁止转载。
评论