当前位置: 代码迷 >> 综合 >> 分布式系统中的CAP理论
  详细解决方案

分布式系统中的CAP理论

热度:43   发布时间:2024-02-09 07:22:26.0

 

在分布式系统中,有一个CAP理论:

C: 一致性 consistent

A: 可用性  available

P: 分区容错性  partion tolerence

 

cap不能同时做到,因为我们认为网络通信是不可靠的,总会可能出现问题导致网络通信失败。即必须满足P。

当满足P时。即存在:

CP:为什么满足CP时不能满足A呢,因为这里的C是强一致性,比如我们集群里有2台机器m1,m2,当发送修改数据到其中1台m1时(将一个数据a从0修改为1),如果我们为了达到强一致性,就必须在向m1写入成功后立马向m2同步,而在同步的过程中,如果此时向m2请求获取a的值,则不能返回(必须等同步完成),此时A(可用性)就不能满足。

 

AP:同理,如果我们要达到可用性,则在请求时不能等待同步,此时获取到a的值可能还是0,即达不到强一致性。

 

目前大多数系统都实现的是AP,然后加上最后一致性。

  相关解决方案