内容简介:CAP理论指在一个分布式系统中,一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三个要素最多只能同时实现两点,不可能三者兼顾。
CAP理论指在一个分布式系统中,一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三个要素最多只能同时实现两点,不可能三者兼顾。
让我们想象一个简单的分布式系统,它由G1和G2两个节点组成的,这两个节点都存有相同的变量V且初始值都是V0,如下图
客户端Client可以向任何一个节点发出读写请求,当节点收到该请求,经过计算返回相应的应答,如写数据操作
读数据操作如下
分区容错性P
The system will continue to function when network partitions occur.
当网络出现分区后,系统能够继续履行职责。
一致性C
A read is guaranteed to return the most recent write for a given client.
对某个指定的客户端来说,它的读操作保证能够返回最新的写操作结果。如下
节点G1在应答client之前,先把数据同步给G2节点,当client从G2读取时就已经是最新的数据了,从而达到了数据的一致性。
可用性A
A non-failing node will return a reasonable response within a reasonable amount of time (no error or timeout).
非故障节点将在合理的时间内返回合理的响应,但不能是错误响应或超时。
第一阶段,client向节点G1发出写操作请求,数据是v1。由于网络分区,导致G1无法把数据同步给G2节点,如果此时满足可用性A,client向节点G2发出读操作请求,如下图
由于满足可用性A则G2返回给client的数据是v0,则不满足一致性C。如果需要满足一致性C,则失联的G2暂时不可用,直到网络恢复并同步数据完成方可。
本文部分内容参考并翻译于
https://mwhittaker.github.io/blog/an_illustrated_proof_of_the_cap_theorem/
End
版权归@码农神说所有,转载须经授权,翻版必究
转载可联系助手,微信号:codeceo-01
往期精彩
扫码关注我们
码农神说
一个让你远离抑郁的公众号
以上所述就是小编给大家介绍的《面试官:CAP 都搞不清楚,别跟我说你懂微服务》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:- 2019最热微服务面试题(上)
- 服务器后台开服面试心得
- 真的跪了!微服务架构27连问面试题配答案
- 抖音、腾讯、阿里、美团春招服务端开发岗位硬核面试(上)
- 抖音、腾讯、阿里、美团春招服务端开发岗位硬核面试(二)
- 抖音、腾讯、阿里、美团春招服务端开发岗位硬核面试(二)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
网络营销实战密码
昝辉Zac / 电子工业出版社 / 2009.1 / 56.00元
本书是作者几年来网络营销实战的总结,与其他网络营销书籍最大不同之处是:只专注于实战,不谈理论。本书分三部分详细介绍了网络营销实用策略和技巧,并分析了大量实战案例。第一部分介绍市场与产品研究,包括用户、市场和竞争对手的调查;产品、目标市场的确定;价格策略;赢利模式等。第二部分讨论以网络营销为导向的网站设计,包括怎样在网站上卖东西、提高转化率,以及网站目标设定等。第三部分研究怎样给网站带来流量,详细讨......一起来看看 《网络营销实战密码》 这本书的介绍吧!