“可用性”如何在CAP定理中起作用。 AP里面外出
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了“可用性”如何在CAP定理中起作用。 AP里面外出相关的知识,希望对你有一定的参考价值。
我读过很多关于CAP定理的文章。我理解A,C,P的含义,以及当我们遇到网络通信问题时我们能做些什么。
总之,我们有这样的情况:
如果两个节点在群集中存在通信问题:
- 此时,当问题发生时,我们可以允许节点不同步(放弃一致性),或者
- 此时,出现问题时,请暂停节点一段时间(放弃可用性 - 禁用从检测到通信问题的节点读/写)。
使用这个我们有这样的情况:
1)CA - 如果发生通信问题,数据不同步,因为我们有“可用性”,我们不会禁用有问题的节点。但同步将开始通信将得到解决。
2)CP - 如果发生通信问题,将禁用节点(写入/读取不能对此节点执行)
3)AP - 如果发生通信问题,数据也不同步。但由于我们没有C,我们无法保证同步后数据会相同。
AP对我来说不清楚,为什么我们不保证同步后数据会相同?我知道因为CAP定理告诉我们这个并且因为我们没有C但是......这还不够,这并不能告诉我们内部发生了什么,技术上......
答案
AP基本上意味着系统将继续进行更新。假设更新被发送到服务器S1,服务器S1从服务器S2分区。 S1将能够提供新值,但S2仍将显示过时值。虽然CAP定理一旦分区消失就不谈融合,但有很多方法可以在网络分区后构建系统。我们可以使用CRDT(无冲突复制数据类型),也可以使用补偿交易。 Eric Brewer在以下论文中写过这篇文章 - CAP 12 Years
以上是关于“可用性”如何在CAP定理中起作用。 AP里面外出的主要内容,如果未能解决你的问题,请参考以下文章
详解 CAP 定理 Consistency(一致性) Availability(可用性)Partition tolerance(分区容错性)