CAP定理

 JAVA   大苹果   2024-01-16 22:49   111

CAP定理

1998年,加州大学的计算机科学家Eric Brewer提出,分布式系统有三个指标:

  • Consistency(一致性)
  • Availability(可用性)
  • Partition toerance(分区容错性)

image.png

Eric Brewer说,分布式系统无法同时满足这三个指标。这个结论就叫做CAP定理

CAP定理-Partition tolerance

Consistency(一致性):用户访问分布式系统中的任意节点,得到的数据必须一致

image.png

Availability (可用性):用户访问集群中的任意健康节点,必须能得到响应,而不是超时或拒绝

image.png

Partition(分区):因为网络故障或其它原因导致分布式系统中的部分节点与其它节点失去连接,形成独立分区。 Tolerance(容错):在集群出现分区时,整个系统也要持续对外提供服务

image.png

简述CAP定理内容

  • 分布式系统节点通过网络连接,一定会出现分区问题(P)

  • 当分区出现时,系统的一致性(C)和可用性(A)就无法同时满足

  • 思考:elasticsearch集群是CP还是AP?

  • ES集群出现分区时,故障节点会被剔除集群,数据分片会重新分配到其它节点,保证数据一致。因此是低可用性,高一致性,属于CP