如何分析CAP 理论

66次阅读
没有评论

共计 769 个字符,预计需要花费 2 分钟才能阅读完成。

今天就跟大家聊聊有关如何分析 CAP 理论,可能很多人都不太了解,为了让大家更加了解,丸趣 TV 小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

什么是 CAP 理论

在计算机科学理论,CAP 定理(也称为 Brewer 定理),是由计算机科学家 Eric Brewer 提出的,即在分布式计算机系统不可能同时提供以下全部三个保证:

一致性(Consistency):所有节点同一时间看到是相同的数据;

可用性(Availability):不管是否成功,确保每一个请求都能接收到响应;

分区容错性(Partition tolerance):系统任意分区后,在网络故障时,仍能操作

为什么说 CAP 只能三选二

下面分别举例说明了为什么说 CAP 只能三选二。

在一个网络中有 N1 和 N2 两个节点。他们都共享数据块 V,其中有一个值 V0。运行在 N1 的 A 程序可以认为是安全的、无 bug、可预测的和可靠的。运行在 N2 是 B 程序。这个例子中,A 将写入 V 新值,而 B 从 V 读取值

系统预期执行下面的操作

首先写一个 V 的新值 V1

然后消息(M)从 N1 更新 V 的拷贝到 N2

现在,从 B 读取将返回 V1

如果网络是分区的,当 N1 到 N2 的消息不能传递时,执行上面的第三步,会出现虽然 N2 能访问到 V 的值(可用性),但其实与 N1 的 V 的值已经不一致了(一致性)。

意义

在系统架构时,应该根据具体的业务场景,来权衡 CAP。比如,对于大多数互联网应用来说(如门户网站),因为机器数量庞大,部署节点分散,网络故障是常态,可用性是必须需要保证的,所以只有舍弃一致性来保证服务的 AP。而对于银行等,需要确保一致性的场景,通常会权衡 CA 和 CP 模型,CA 模型网络故障时完全不可用,CP 模型具备部分可用性。

看完上述内容,你们对如何分析 CAP 理论有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注丸趣 TV 行业资讯频道,感谢大家的支持。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-08-04发表,共计769字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)