编者按:由InfoQ主办的全球架构师峰会将于2012年8月10日-12日在深圳举行,为了更好地诠释架构的意义.方法和实践,InfoQ中文站近期会集中发布一批与架构相关的文章,本篇即为其中之一.InfoQ也欢迎读者亲身参与到本次全球架构师峰会中,与来自国内外的顶尖架构师进行面对面的交流.报名参会请点击这里. 本文首发于  Computer杂志,由InfoQ和IEEE呈现给您. CAP理论断言任何基于网络的数据共享系统,最多只能满足数据一致性.可用性.分区容忍性三要素中的两个要素.但是通过显式处理分…
大约在五六年前,第一次接触到了当时已经是hot topic的NoSql.不过那个时候学的用的都是mysql,Nosql对于我而言还是新事物,并没有真正使用,只是不明觉厉.但是印象深刻的是这么一张图片(后来google到图片来自这里):     这张图片是讲数据库(包括传统的关系型数据库和NOSQL)与CAP理论的关系.由于并NoSql并没有实践经验,也没有去深入了解,对于CAP理论更是一知半解.因此,为什么某一款数据库被划分到哪一个阵营,并不清楚.     工作之后对MongoDB使用得比较多,…
1. CAP理论的历史 2000年7月,Eric Brewer教授提出CAP猜想:2年后,Seth Gilbert和Nancy Lynch从理论上证明了CAP:之后,CAP理论正式成为分布式计算领域的公认定理. 2. CAP的背景和定义 CAP理论讨论的对象是分布式场景.一个分布式系统需要满足三个最基本的特性,分别是一致性(Consistency).可用性(Availability)和分区容错性(Partition Tolerance,这个中文翻译很不直观,没能体现Partition原来的意思,…
大约在五六年前,第一次接触到了当时已经是hot topic的NoSql.不过那个时候学的用的都是mysql,Nosql对于我而言还是新事物,并没有真正使用,只是不明觉厉.但是印象深刻的是这么一张图片(后来google到图片来自这里): 这张图片是讲数据库(包括传统的关系型数据库和NOSQL)与CAP理论的关系.由于并NoSql并没有实践经验,也没有去深入了解,对于CAP理论更是一知半解.因此,为什么某一款数据库被划分到哪一个阵营,并不清楚. 工作之后对MongoDB使用得比较多,有了一定的了解,…
CAP理论概述 1998 年来自柏克莱加州大学的计算机科学家 埃里克.布鲁尔(Eric Brewer) 提出分布式系统的三个基本指标:Consistency(一致性).Availability(可用性) .Partition tolerance(分区容错),简称:CAP. 在2000年的分布式计算原则研讨大会上(PODC)埃里克.布鲁尔提出的一个猜想:在设计一个分布式系统时,CAP三者无法同时满足.在2002年,麻省理工学院(MIT)的 赛斯·吉尔伯特(Seth Gilbert) 和 南希·林奇…
引言 CAP 理论,相信很多人都听过,它是指: 一个分布式系统最多只能同时满足一致性(Consistency).可用性(Availability)和分区容错性(Partition tolerance)这三项中的两项. 为什么要理解 CAP 理论?我能说出很多理由来.如果是在职场上,也许最合适的理由是,当领导给出的任务不靠谱时,我们可以依据 CAP 去否决它. 比如,有这么一个任务,给你定了三大目标: 既要提升系统的可用性 又要保证数据的实时可见 还有提升系统的容错能力 看到"既要.又要.还要&q…
问题的提出 在计算机科学领域,分布式一致性是一个相当重要且被广泛探索与论证问题,首先来看三种业务场景. 1.火车站售票 假如说我们的终端用户是一位经常坐火车的旅行家,通常他是去车站的售票处购买车票,然后拿着车票去检票口,再坐上火车,开始一段美好的旅行----一切似乎都是那么和谐.想象一下,如果他选择的目的地是杭州,而某一趟开往杭州的火车只剩下最后一张车票,可能在同一时刻,不同售票窗口的另一位乘客也购买了同一张车票.假如说售票系统没有进行一致性的保障,两人都购票成功了.而在检票口检票的时候,其中一…
自打引入CAP理论的十几年里,设计师和研究者已经以它为理论基础探索了各式各样新颖的分布式系统,甚至到了滥用的程度.NoSQL运动也将CAP理论当作对抗传统关系型数据库的依据. CAP理论主张任何基于网络的数据共享系统,都最多只能拥有以下三条中的两条: 数据一致性(C),等同于所有节点访问同一份最新的数据副本: 对数据更新具备高可用性(A): 能容忍网络分区(P). CAP理论的表述很好地服务了它的目的,即开阔设计师的思路,在多样化的取舍方案下设计出多样化的系统.在过去的十几年里确实涌现了不计其数…
任老师第一节主要讲了分布式系统实现时候面临的八个问题,布置的作业就是这个,查询CAP理论. 笔者初次接触分布式,所以本文主要是一个汇总. 一.CAP起源 CAP原本是一个猜想,2000年PODC大会的时候大牛Brewer提出的,他认为在设计一个大规模可扩放的网络服务时候会遇到三个特性:一致性(consistency).可用性(Availability).分区容错(partition-tolerance)都需要的情景,然而这是不可能都实现的.之后在2003年的时候,Mit的Gilbert和Lync…
本文是原文https://www.cnblogs.com/cobbliu/p/7494961.html的译文,原链接:http://www.infoq.com/cn/articles/cap-twelve-years-later-how-the-rules-have-changed CAP理论断言任何基于网络的数据共享系统,最多只能满足数据一致性.可用性.分区容忍性三要素中的两个要素.但是通过显式处理分区情形,系统设计师可以做到优化数据一致性和可用性,进而取得三者之间的平衡. 自打引入CAP理论…