美文网首页程序员
分布式系统 - CAP

分布式系统 - CAP

作者: 村长225 | 来源:发表于2018-07-30 23:01 被阅读75次

定义

It is impossible for a distributed data store to simultaneously provide more than two out of the following three guarantees:

  • Consistency: every read receives the most recent write or an error
  • Availability: every request receives a (non-error) response – without guarantee that it contains the most recent write
  • Partition Tolerance: the system continues to operate despite an arbitrary number of messages being dropped (or delayed) by the network between nodes

在一个分布式存储系统中,不可能同时满足以下三点:

  • 一致性:每次读请求都可以获取到数据的最新副本或者出错
  • 可用性:每次读请求都能获得一个非错响应 - 但是不保证获取的数据为最新数据
  • 分区容错性:系统仍然能够对外提供一致性和可用性保障,即使有任意数量的消息在网络传输时被丢弃或延时送达

解释

CP系统

CP系统

在上图的CP系统中,网络分区阻止了Slave从Master同步最新数据到本地,因此Slave无法得知本地数据副本是否为最新数据,为了保证一致性,因而拒绝对外提供响应。

  • 该系统具备分区容错性,因为它允许节点通信出现故障
  • 该系统具备一致性,因为它拒绝对外提供非最新的数据副本
  • 该系统可用性较低,因为它会因为无法判断本地副本是否为最新而拒绝响应

AP系统

AP系统

在上图的AP系统中,网络分区阻止了Slave从Master同步最新数据到本地,因此Slave无法得知本地数据副本是否为最新数据,为了保证可用性,Slave对外提供本地的副本,即使它可能不是最新数据。

  • 该系统具备分区容错性,因为它允许节点通信出现故障
  • 该系统具备高可用性,因为它总会提供一个数据副本,即使它非最新
  • 该系统一致性较差,因为它无法确保提供的数据总是最新

CA系统

CA系统

在上图的CA系统中,网络是可靠的,因此可以确保Master节点的数据更新同步到Slave节点

  • 该系统具备一致性,因为它总能提供数据的最新副本
  • 该系统具备高可用性,因为它的所有节点总能提供一个数据响应
  • 该系统不具备分区容错性,因为这里网络是可靠的,不会出现分区(现实很残酷)

相关文章

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

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

  • 分布式系统-CAP理论

    CAP基本概念 CAP理论作为分布式系统的基石,应该是每个入门分布式系统的人都应该学习的内容。 CAP理论是200...

  • 分布式系统理论基础二 CAP

    引言 CAP是分布式系统、特别是分布式存储领域中被讨论最多的理论,“什么是CAP定理?”在Quora 分布式系统分...

  • 分布式理论

    分布式系统的CAP定律 在分布式系统里面有一个CAP定律,这个定理的内容是指的是在一个分布式系统中, Consis...

  • 资料收集

    分布式系统设计权衡之CAP

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

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

  • 架构篇章

    并发与并行的定义与区别 分布式CAP定理 定义:CAP定理又称CAP原则,指的是在一个分布式系统中,Consist...

  • 面试篇:分布式事务

    1. 分布式理论 1.1 CAP定理 CAP定理,指的是在一个分布式系统中, Consistency(一致性)、 ...

  • 分布式事务原理与解决方案实战

    分布式事务: 1 CAP 定理 1.1 概念 CAP 理论在分布式系统中 一致性:分布式环境下多个节点的数据是否强...

  • 分布式理论(二)——Base 理论

    前言 在前文 分布式理论(一) —— CAP 定理 中,我们说,CAP 不可能同时满足,而分区容错是对于分布式系统...

网友评论

    本文标题:分布式系统 - CAP

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