理解CAP理论】的更多相关文章

自打引入CAP理论的十几年里,设计师和研究者已经以它为理论基础探索了各式各样新颖的分布式系统,甚至到了滥用的程度.NoSQL运动也将CAP理论当作对抗传统关系型数据库的依据. CAP理论主张任何基于网络的数据共享系统,都最多只能拥有以下三条中的两条: 数据一致性(C),等同于所有节点访问同一份最新的数据副本: 对数据更新具备高可用性(A): 能容忍网络分区(P). CAP理论的表述很好地服务了它的目的,即开阔设计师的思路,在多样化的取舍方案下设计出多样化的系统.在过去的十几年里确实涌现了不计其数…
一 CAP理论简述 CAP (Consistency, Availability, Partition  Tolerance,) 理论是NoSQL数据库管理系统构建的基础.     强一致性:等同于所有节点访问同一份最新的数据副本   可用性:每一个操作总是能够在一定的时间内返回结果,这里需要注意的是"一定时间内"和"返回结果".一定时间指的是,在可以容忍的范围内返回结果,结果可以是成功或者失败.   分区容错性:理解为在存在网络分区的情况下,仍然可以接受请求(满足…
编者按:由InfoQ主办的全球架构师峰会将于2012年8月10日-12日在深圳举行,为了更好地诠释架构的意义.方法和实践,InfoQ中文站近期会集中发布一批与架构相关的文章,本篇即为其中之一.InfoQ也欢迎读者亲身参与到本次全球架构师峰会中,与来自国内外的顶尖架构师进行面对面的交流.报名参会请点击这里. 本文首发于  Computer杂志,由InfoQ和IEEE呈现给您. CAP理论断言任何基于网络的数据共享系统,最多只能满足数据一致性.可用性.分区容忍性三要素中的两个要素.但是通过显式处理分…
任老师第一节主要讲了分布式系统实现时候面临的八个问题,布置的作业就是这个,查询CAP理论. 笔者初次接触分布式,所以本文主要是一个汇总. 一.CAP起源 CAP原本是一个猜想,2000年PODC大会的时候大牛Brewer提出的,他认为在设计一个大规模可扩放的网络服务时候会遇到三个特性:一致性(consistency).可用性(Availability).分区容错(partition-tolerance)都需要的情景,然而这是不可能都实现的.之后在2003年的时候,Mit的Gilbert和Lync…
在单机的数据库系统之中,我们很容易实现一套满足ACID 特性的 事务处理系统, 事务的一致性不存在问题. 但是在分布式系统之中,由于数据分布在不同的主机结点上,如何对着些数据进行分布式的事务处理就具有非常大的挑战,CAP 理论的出现,让我们对于分布式事务的一致性有了另外一种看法. 什么是CAP 理论? 在计算机科学理论,CAP 理论 (也称Brewer 定理) 又有称为 CAP原则,CAP定理,是由计算机科学家Eric Brewer 在 2000 年 提出的 ,其理论观点是, 在分布式计算机系统…
分布式CAP理论 来自wiki: 在理论计算机科学中,CAP定理(CAP theorem),又被称作布鲁尔定理(Brewer's theorem),它指出对于一个分布式计算系统来说,不可能同时满足以下三点:[1][2] 一致性(Consistency) (等同于所有节点访问同一份最新的数据副本) 可用性(Availability)(每次请求都能获取到非错的响应--但是不保证获取的数据为最新数据) 分区容错性(Partition tolerance)(以实际效果而言,分区相当于对通信的时限要求.系…
在理论计算机科学中,CAP定理(CAP theorem),又被称作布鲁尔定理(Brewer's theorem),它指出对于一个分布式计算系统来说,不可能同时满足以下三点: 一致性(Consistency)(等同于所有节点访问同一份最新的数据副本) 可用性(Availability)(对数据更新具备高可用性) 容忍网络分区(Partition tolerance)(以实际效果而言,分区相当于对通信的时限要求.系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间…
CAP 理论是分布式系统设计中的一个重要理论,虽然它为系统设计提供了非常有用的依据,但是也带来了很多误解.本文将从 CAP 诞生的背景说起,然后对理论进行解释,最后对 CAP 在当前背景下的一些新理解进行分析,澄清一些对 CAP 的误解. CAP 理论诞生的背景 CAP 理论的是在"数据一致性 VS 可用性"的争论中产生.CAP 的作者 Brewer 在 90 年代的时候就开始研究基于集群的跨区域系统(实质上是早期的云计算),对于这类系统而言,系统可用性是首要目标,因此他们采用了缓存或…
引言 CAP 理论,相信很多人都听过,它是指: 一个分布式系统最多只能同时满足一致性(Consistency).可用性(Availability)和分区容错性(Partition tolerance)这三项中的两项. 为什么要理解 CAP 理论?我能说出很多理由来.如果是在职场上,也许最合适的理由是,当领导给出的任务不靠谱时,我们可以依据 CAP 去否决它. 比如,有这么一个任务,给你定了三大目标: 既要提升系统的可用性 又要保证数据的实时可见 还有提升系统的容错能力 看到"既要.又要.还要&q…
一致性hash理解 白话概述: 比如说存储图片,有10台服务器用来存储,对图片名进行hash(pic_name)%10得到的值就是图片存放的服务器序号.这是正常的hash算法分散图片存储.但是有一天,你觉得服务器不够了,需要加几台机器扩容存储.这时候,假设加了10台,变成20台,那么原先譬如11%10=1现在11%20=11,则存取图片会跑到11号服务器,如果仍旧用原来的算法,那所有图片几乎都要重新移动位置,这明显非常消耗性能. 一致性hash就是为了解决这一问题,它建立了hash环的概念,2^…