共计 465 个字符,预计需要花费 2 分钟才能阅读完成。
CAP 实践中的 P 到底是个什么意思?
一个分布式系统外面,节点组成的网络原本应该是连通的。然而可能因为一些故障,使得有些节点之间不连通了,整个网络就分成了几块区域。数据就分布在了这些不连通的区域中。这就叫分区。
当你一个数据项只在一个节点中保留,那么分区呈现后,和这个节点不连通的局部就拜访不到这个数据了。这时分区就是无奈容忍的。
进步分区容忍性的方法就是一个数据项复制到多个节点上,那么呈现分区之后,这一数据项就可能散布到各个区里。容忍性就进步了。
然而,要把数据复制到多个节点,就会带来一致性的问题,就是多个节点下面的数据可能是不统一的。要保障统一,每次写操作就都要期待全副节点写胜利,而这期待又会带来可用性的问题。
总的来说就是,数据存在的节点越多,分区容忍性越高,但要复制更新的数据就越多,一致性就越难保障。为了保障一致性,更新所有节点数据所须要的工夫就越长,可用性就会升高。
作者:邬江
链接:https://www.zhihu.com/questio…
起源:知乎
著作权归作者所有。商业转载请分割作者取得受权,非商业转载请注明出处。
正文完