分布式系统必备:CAP理论

Posted 架构师的自我修养

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了分布式系统必备:CAP理论相关的知识,希望对你有一定的参考价值。

前言

CAP理论又叫布鲁尔理论,是加州大学伯克利分校的Eric Brewer教授提出的,是架构师设计分布式系统的必备理论。

什么是CAP理论

CAP分别指什么呢?一致性(Consistence)、可用性(Availability)、分区容错性(Partition Tolerance)三个设计约束。CAP理论是指这三个约束条件不可能同时满足,只能同时满足两个。

一致性

客户端在进行读操作时能够返回最新的写操作结果。

可用性

非故障的节点在合理的时间内返回合理的结果。

分区容错性

网络发生分区故障时,系统能够继续履行职责。

CAP应用

CAP中P是必然发生的,因为无法保证网络100%可用。我们只能选择CP或AP。

CP


系统中发生了分区,a节点更新为y值,b节点仍为x值,当c客户端读取b节点的数据时,为了保证一致性,b需返回error,牺牲了可用性。

AP


系统发生分区后,c客户端读取b节点数据时,为保证可用性,b返回x,不是最新的数据y,此时牺牲了一致性。


以上是关于分布式系统必备:CAP理论的主要内容,如果未能解决你的问题,请参考以下文章

分布式必备理论基础:CAP和BASE

分布式系统理论基础 - CAP

重温分布式系统的CAP理论

分布式初探——分布式系统的CAP理论

分布式系统CAP理论

分布式系统基础理论之CAP理论