CAP原理通俗理解

Posted shoshana-kong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CAP原理通俗理解相关的知识,希望对你有一定的参考价值。

 

  1. 在分布式系统中,有一个基本原则叫做CAP,consistence,一致性,availability,可用性,partition tolerance分区容错性。
  2. 一致性,在这里指的是分布式系统的各个副本的值要保持同步,这里强的是空间上的一致,注意和数据库中ACID中的一致性相区分,那个一致性指的是事务执行前后的逻辑一致性,比如你转1000块给别人,不能你的账户少了1000块,对方的账户却没有多1000块。
  3. 可用性,指的是当client发出数据读写请求时,要在足够短的时间内做出响应。
  4. 分区容错性指的是,在不稳定和不可靠的网络环境下,节点可能出现失联或者荡机,网络可能出现分区子网,在这种情况下仍然能保证数据不出错。
  5. 所以,分区容错性是我们必须最终要保证的,但是一致性和可用性是一对矛盾的东西。所以在三者中,我们只能取两个。
  6. 为啥一致性和可用性是一对矛盾的东西呢?因为要实现一致性,在本质上都是进行副本之间的同步,而这个是需要花时间的,如果要保证强一致性,那么在同步的这一段时间中,是不可用的。

以上是关于CAP原理通俗理解的主要内容,如果未能解决你的问题,请参考以下文章

转战物联网·基础篇05-通俗理解MQTT协议的实现原理和异步方式

这可能是我看过最通俗也是最深刻的CAP理论

通俗化理解Spring3 IoC的原理和主要组件

Vue Watch 的原理 和 $nextTick() 通俗理解

通俗理解IO模型

分布式核心原理:Paxos算法的通俗理解