说明:转载本人掘金文章
CAP理论1.Partition tolerance指的是一个分布式系统不能因为多个网段的其中一个网段出现问题,而导致整个分布式的一致性和可用性得不到保证,也就是支持分区容错是一个分布式系统的前提和基础,否则不被称为分布式系统。保证分区容错的言外之意就是,如果你的系统是个分布式系统,那么你的服务节点一定是多副本并且副本节点分布在任意网段的,这是作为一个分布式系统的基本要求。
2.Availability指的是分布式系统对于一个任意用户请求,需要在用户预期内得到系统的响应。这里如果没有及时响应,并不是说的是单点故障造成的,p理论已经说明了这一点,分布式系统不存在单点故障问题。这里可用性指的是由于整个分布式系统处理能力已经达到上限,导致的服务卡顿超时。
3.Consistency指的是分布式系统中,不同类型服务数据一致性问题。假设一个订单系统,拆分为订单和库存系统,那么现在这个在分布式系统中已经是处在不同节点中,那么数据一致性问题就比较难于得到保证了。
Availability和Consistency其实是会相互制约的。因为保证一致性性能其实会受到影响,会拖慢系统,影响系统吞吐量(数据库XA和seta不被广泛使用原因)。
现实中分布式系统1.Partition tolerance:我们看到是支持P理论的,在阿里云购买多地的机器,并且都部署了多个副本,就算北京或者上海机房出现问题,依然



