美文网首页
分布式CAP原理

分布式CAP原理

作者: 旺旺大仙贝 | 来源:发表于2018-08-14 15:16 被阅读0次
image.png

CAP原理

任何一个分布式系统,只能满足CAP三个中的两个

CAP分别是什么

Consistency 一致性

一致性

  • "all nodes see the same data at the same time"两个视角

  • 客户端:多并发访问时更新过的数据如何获取;

  • 服务端:如何复制分布到整个系统,保证数据最终一致性三种一致性策略

  • 强一致性:对于关系型数据库,更新过的数据能立即被后续访问看到

  • 弱一致性:能容忍后续部分或全部访问不到

  • 最终一致性:如果经过一段时间后要求能访问到更新后的数据

  • CAP理论说不能同时满足的一致性指的是强一致性

Availability 可用性

  • "Reads and writes always succeed",服务一直可用

  • 每一个可用性的分布式系统,每一个非故障节点必须对每一个请求作出响应。

  • 一般衡量一个系统的可用性通过停机时间来计算。

  • 5个9:可用水平99.999%

Partition Tolerance 分区容错性

  • "the system continues to operate despite arbitrary message loss or failure of part of the system",分布式系统在遇到某节点或者网络分区故障时,仍然能够对外提供满足一致性和可用性服务。

  • 简单来说,就是在网络中断,消息丢失的情况下,系统依然能够正常工作。

CAP权衡

CA without P

  • 不存在,网络分区是必然的,舍弃P意味着舍弃分布式系统

CP without A

  • 一个分布式系统容许系统停机或者长时间无响应,舍弃A保C

  • 一旦发生网络故障或者消息丢失,牺牲用户体验,等待所有数据全部一致后才可以访问

  • 最典型的,分布式数据库。一致性是最基本最重要的条件

  • 分布式存储系统Redis,HBase,分布式协调组件Zookeeper

AP without C

  • 为了保证高可用,需要在用户访问时可以马上得到返回,每个节点只能用本地数据库提供服务,这样会导致全局数据的不一致性

  • 大多数大型互联网应用,由于主机众多,部署分散,集群规模大,因此节点故障、网络故障是常态,需要保证可用性,牺牲一点强一致性,不会造成严重的用户流失

  • 比如:淘宝的购物,12306的买票。这里牺牲的是强一致性

怎么取舍

  • 没有定论,根据场景定夺,适合的才是最好的。

  • 一般,涉及到钱的必须保证C,网络故障宁可停止服务,保证CA,舍弃P

  • 其他场景普遍做法是选择AP,舍弃强一致性,退而求其次保证最终一致性

相关文章

  • Redis-主从同步(有备无患-解决单点故障)

    CAP CAP原理就好比分布式领域的牛顿定律,它是分布式理论的基石。原理简单讲解:C - Consistent, ...

  • 微服务架构下的分布式数据管理书目录

    分布式数据管理之痛点 分布式数据管理之举措 CAP原理和最终一致性 CAP原理(CAP Theorem) 最终一致...

  • CAP 原理

    CAP 原理: CAP 原理是分布式存储的理论基石 C - Consistent ,一致性 A - Availab...

  • 架构师训练营第6周作业 CAP

    1. 请简述CAP原理 CAP原理是用来描述分布式数据存储系统的一个定理,CAP三个字母分别代表Consisten...

  • 架构师训练营第六周作业

    CAP原理 CAP原理是指一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availabi...

  • 架构师进阶实战随堂笔记三

    场景三分布式系统中的CAP原则 CAP&Base 理论介绍与案例分享 CAP理论介绍 CAP原理 一致性(Cons...

  • 2018-07-19

    分布式CAP原理 consistency:一致性 aviliable:可用性 partition toleranc...

  • CAP原理和BASE思想

    CAP原理分布式领域CAP理论,Consistency(一致性), 数据一致更新,所有数据变动都是同步的。Avai...

  • 分布式CAP原理

    CAP原理 任何一个分布式系统,只能满足CAP三个中的两个 CAP分别是什么 Consistency 一致性 一致...

  • CAP&BASE

    如何正确理解CAP理论?CAP原理和BASE思想6.0 柔性事务 :TCC两阶段补偿型聊聊分布式事务,再说说解决方...

网友评论

      本文标题:分布式CAP原理

      本文链接:https://www.haomeiwen.com/subject/njrvbftx.html