架构师训练营第 6 周:CAP 原理
简述
CAP描述了一个分布式存储系统的三个特征:
C:数据一致性;
A:数据可用性;
P:网络分区容忍性。
如果可以忽略网络的不可靠性,CAP是可以全部满足的,但是事与愿违,通常只能满足CP或者AP。
数据一致性
请求获取的数据总是最新的。
数据可用性
请求总是能获得响应,但是数据不保证是最新的。
网络分区容忍性
当节点之间网络异常——断网、延迟或者丢包造成无法通信的时候,系统依旧可以提供能力。
CP
数据满足CP原则,也就是在网络分区情况下,首先保证数据一致性,相反的可用性就无法得到满足,也就是说至少更新请求无法获取到想要的数据,要么返回超时,要么返回错误的响应码。
AP
数据保证一致性,在分区场景下,任何请求都可以正常获取响应,但是各节点间的数据会造成差异。
细节
虽然,CAP在分区状况下会在一致性和可用性之间“牺牲”调一个,但是不代表我们可以什么都不做,还是可以通过具体的策略来弥补牺牲调的特性的。
版权声明: 本文为 InfoQ 作者【行下一首歌】的原创文章。
原文链接:【http://xie.infoq.cn/article/38acdc7b7bce4e71474b4c6d8】。
本文遵守【CC BY-NC】协议,转载请保留原文出处及本版权声明。
评论