CAP定理(theorem)

一致性(Consistency): 每次读取都会收到最新的写入或错误
可用性(Availability): 每个请求都会收到 (非错误) 响应, 但不保证它包含最新的写入
分区容差(Partition tolerance): 尽管节点之间的网络删除 (或延迟) 了任意数量的消息, 但系统仍继续运行
特别是, cap 定理意味着, 在存在网络分区的情况下, 必须在一致性和可用性之间做出选择。请注意, cap 定理中定义的一致性与 acid 数据库 transactions[4] 中保证的一致性有很大不同。

说明

没有分布式系统可以避免网络故障,因此通常必须容忍网络分区。在存在分区的情况下,可以选择一个分区:一致性或可用性。在选择一致性而非可用性时,如果由于网络分区而无法保证特定信息是最新的,则系统将返回错误或超时。在选择可用性而非一致性时,系统将始终处理查询并尝试返回最新的可用信息版本,即使由于网络分区而无法保证其是最新的。

在没有网络故障的情况下 - 也就是说,当分布式系统正常运行时 - 可以满足可用性和一致性。

CAP经常被误解,好像必须始终选择放弃三种保证中的一种。实际上,只有在发生网络分区或故障时,才能在一致性和可用性之间进行选择;在所有其他时间,不需要进行任何权衡。

设计了传统ACID的数据库系统,例如RDBMS选择一致性而非可用性,而围绕BASE理念设计的系统,例如NoSQL运动中常见的,选择可用性而不是一致性。

PACELC定理以CAP为基础,即使在没有分区的情况下,也会在延迟和一致性之间进行另一次权衡。

https://en.wikipedia.org/wiki/CAP_theorem

原文地址:https://www.cnblogs.com/kevin1988/p/10488843.html

时间: 2024-12-23 07:23:07

CAP定理(theorem)的相关文章

关于CAP定理的简单理解

CAP定理简介 在理论计算机科学中,CAP定理(CAP theorem),又被称作布鲁尔定理(Brewer's theorem),它指出对于一个分布式计算系统来说,不可能同时满足以下三点: 一致性(Consistency):同一个数据在集群中的所有节点,同一时刻是否都是同样的值. 可用性(Availability):集群中一部分节点故障后,集群整体是否还能处理客户端的更新请求. 分区容忍性(Partition tolerance):是否允许数据的分区,分区的意思是指是否允许集群中的节点之间无法通

佳文分享:CAP定理

1976年6月4号,周5,在远离音乐会大厅的一个楼上的房间内,在位于Manchester的Lesser Free Trade Hall ,Sex Pistols 乐队(注:Sex Pistols的经理人Malcolm McLaren 2010.4.8去世)開始了他们的第一次演出(gig, 注:规模太小称不上演唱会 ).关于当晚谁出席了那场演出有些混乱,部分是由于6周后的还有一场音乐会,但最基本的还是由于,这场演出被觉得是永久改变西方音乐文化 的一场演出.这场演出是如此的重要且富有象征意义,以至于

CAP定理

from wikipedia CAP定理 CAP定理(CAP theorem),又被称作布鲁尔定理(Brewer's theorem),它指出对于一个分布式计算系统来说,不可能同时满足以下三点: 一致性(Consistency) 可用性(Availability) 容忍网络分区(Partition tolerance) 根据定理,分布式系统只能满足三项中的两项而不可能满足全部三项. 理解CAP理论的最简单方式是想象两个节点分处分区两侧.允许至少一个节点更新状态会导致数据不一致,即丧失了C性质.如

谈谈对CAP定理的理解

谈谈对CAP定理的理解 CAP定理的常规解释是任何分布式系统只能在一致性(Consitency),可用性(Availability)和分区容忍性(Partition Tolerance)中三选二.这个解释很让人费解,笔者在看了一些文章后谈谈我对它的理解,还请斧正. 从问题出发 假设我们用一台服务器A对外提供存储服务,为了避免这台服务器宕机导致服务不可用,我们又在另外一台服务器B上运行了同样的存储服务.每次用户在往服务器A写入数据的时候,A都往服务器B上写一份,然后再返回客户端.一切都运行得很好,

CAP原则(CAP定理)

CAP原则又称CAP定理,指的是在一个分布式系统中, Consistency(一致性). Availability(可用性).Partition tolerance(分区容错性),三者不可得兼. CAP原则是NOSQL数据库的基石.Consistency(一致性). Availability(可用性).Partition tolerance(分区容错性). 分布式系统的CAP理论:理论首先把分布式系统中的三个特性进行了如下归纳: 一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值

CAP定理与RDBMS的ACID

一.分布式领域CAP理论 CAP定理指在设计分布式系统时,一致性(Consistent).可用性(Availability).可靠性(分区容忍性Partition Tolerance)三个属性不可能同时满足,该定理也叫做布鲁尔定理.CAP定理明确了分布式系统所能实现系统的局限性,目前互联网中的很多分布式系统是基于首要满足可用性和分区容忍性而设计的. 在一系列的研究结果里发现,在较大型的分布式系统中,由于网络分隔,一致性与可用性不能同时满足,这意味着这三个要素只能同时实现两个,不可能三者兼顾:放宽

CAP定理(原则)以及BASE理论

CAP定理(原则)以及BASE理论 CAP定理(原则)概念 CAP原则又称CAP定理,指的是在一个分布式系统中, Consistency(一致性). Availability(可用性).Partition tolerance(分区容错性),三者不可得兼. 1. 数据一致性(consistency) 一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值.(等同于所有节点访问同一份最新的数据副本) 2. 服务可用性(availability) 可用性(A):在集群中一部分节点故障后,集

正确理解CAP定理

简介 定义 原文:In a distributed system (a collection of interconnected nodes that share data.), you can only have two out of the following three guarantees across a write/read pair: Consistency, Availability, and Partition Tolerance - one of them must be s

「系统架构」CAP 定理的含义

分布式系统(distributed system)正变得越来越重要,大型网站几乎都是分布式的. 分布式系统的最大难点,就是各个节点的状态如何同步.CAP 定理是这方面的基本定理,也是理解分布式系统的起点. 本文介绍该定理.它其实很好懂,而且是显而易见的.下面的内容主要参考了 Michael Whittaker 的https://mwhittaker.github.io/blog/an_illustrated_proof_of_the_cap_theorem/ 分布式系统的三个指标1998年,加州