美文网首页
理解CAP定理

理解CAP定理

作者: 周小亿 | 来源:发表于2019-03-15 01:25 被阅读0次

作用

分布式系统的最大难点,就是各个节点的状态如何同步。CAP定理正是解决这方面问题的基本定理,也是理解分布式系统的起点。

定义

分布式系统有三个指标:
Consistency
Availability
Partition tolerance
它们的首个字母分别是C,A,P

Consistency:即一致性。在分布式系统中,在一个节点写完后,在任意一个节点读数据,都能读到刚才写完的数据。
Avaliability:即可用性。意思是,只要收到客户端的请求,服务器(不管是哪个节点)必须给出回应,而不管回应是什么。
Partition tolerance:即分区容忍性。所谓分区容忍性,指的是网络发生分区时,还能继续提供服务(即容忍)。分区的含义举个例子,有S1、S2两台服务器,本来在同一个网络,但是现在它们之间网络连接断了,变成了两个网络,就出现了分区。

所谓指标就是希望能达到的目标,而CAP定理指的是这3个指标不能同时达到。

为什么成立

首先如果P达不到,意味着不能正常提供服务了,那就没有C、A可言,因此P肯定要达到。那CAP定理就演化成了,C和A不能同时达到。
那为什么C和A不能同时达到呢?举个例子,有服务器S1和S2,他们两个各自维护彼此一样的数据。现在用户往S1写数据,为了做到C,就必须让S2停止读写,等S1同步到S2后才能开放读写,而停止的操作,就出现S2不可用,这时A就不成立。反过来,如果A要成立,S2就要继续工作,就会导致用户取S2的数据时,不是刚才写的数据,就导致了C不成立。

最后

最后,可以重新理解一下CAP。之前我们的理解是,CAP不能同时存在,那现在可以再提炼为,P成立下,CA只能二选一。

参考链接

http://www.ruanyifeng.com/blog/2018/07/cap.html
https://www.zhihu.com/question/64778723

相关文章

  • 理解CAP定理

    作用 分布式系统的最大难点,就是各个节点的状态如何同步。CAP定理正是解决这方面问题的基本定理,也是理解分布式系统...

  • CAP定理(CAP theorem)

    CAP定理(CAP theorem)在计算机科学中, CAP定理(CAP theorem), 又被称作 布鲁尔定理...

  • 从Paxos不违反CAP来解释什么是CAP定理

    CAP定理是分布式领域当中非常著名的定理,也是大家津津乐道的一个分布式定理。有些人这么理解CAP定理:在分布式系统...

  • 请简述 CAP 原理

    什么是CAP? CAP 定理(CAP theorem)又被称作布鲁尔定理(Brewer's theorem),是加...

  • 架构理论学习之分布式系统理论CAP

    分布式系统理论CAP CAP 定理(CAP theorem)又被称作布鲁尔定理(Brewer's theorem)...

  • 通过NAS对分布式系统CAP理论的理解

    通过NAS对分布式系统CAP理论的理解 CAP原则又称CAP定理,指的是在一个分布式系统中:Consistency...

  • 什么是CAP定理(CAP theorem)

    在计算机科学中, CAP定理(CAP theorem), 又被称作 布鲁尔定理(Brewer's theorem)...

  • CAP 定理

    在计算机科学中, CAP定理(CAP theorem), 又被称作 布鲁尔定理(Brewer's theorem)...

  • CAP 定理

    CAP 定理(CAP theorem),又被称作布鲁尔定理(Brewer's theorem),它指出对于分布式计...

  • Eureka和ZooKeeper的特性

    CAP定理 CAP原则又称CAP定理,指的是在一个分布式系统中,Consistency(数据一致性)、 Avail...

网友评论

      本文标题:理解CAP定理

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