图解 CAP 定理(转载)

article/2025/9/24 15:56:08

文章目录

    • CAP 定理
    • 不一致的产生
    • 解决方案
      • 保 CP 失 A
      • 保 AP 失 C

CAP 定理

  • Consistency 一致性:访问分布式系统中任意节点,总能返回一致的结果
    Every read receives the most recent write or an error
  • Availability 可用性:分布式系统总能向客户端返回响应
    Every request receives a (non-error) response, without the 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

CAP 定理:最多三选二,无法兼得,通常在 CP 或者 AP 之间做出选择

不一致的产生

  1. client 向 Node1 写入新值 v1

image-20210902144323586

  1. 写入成功 Node1 更新成 v1

image-20210902144332846

  1. Node1 在没有将变更同步到 Node2 时,就向客户端返回了应答

image-20210902144346469

  1. client 发起向 Node2 的读操作

image-20210902144357711

  1. 返回了旧值 v0(不一致)的结果

image-20210902144405372

保证一致性

  1. client 向 Node1 写入新值 v1

image-20210902144821346

  1. 写入成功 Node1 更新成 v1,此时不能立刻向 client 返回应答,而是需要将 v1 同步到 Node2

image-20210902144917135

  1. 同步 v1 成功

image-20210902145113734

  1. 此时才能向 client 返回应答

image-20210902145138926

  1. 如果此时 client 再去访问 Node2,不会出现不一致的情况

解决方案

保 CP 失 A

  1. 当发生了网络分区,Node1 与 Node2 已经失去了联系,这时仍想对外提供服务(保 P)

image-20210902145433075

  1. client 向 Node1 写入新值 v1

image-20210902145513466

  1. 写入 Node1 成功,但无法同步至 Node2

image-20210902145616905

  1. 这时为了保证一致性,Node1 不能向 client 返回应答,造成操作挂起无法完成(失去可用性)

保 AP 失 C

  1. 当发生了网络分区,Node1 与 Node2 已经失去了联系,这时仍想对外提供服务(保 P)

image-20210902145433075

  1. client 向 Node1 写入新值 v1

image-20210902145513466

  1. 写入 Node1 成功,但无法同步至 Node2

image-20210902145616905

  1. 为了保证可用性,向 client 返回了应答(但牺牲了一致性)

image-20210902150437928


http://chatgpt.dhexx.cn/article/p0n8yuTa.shtml

相关文章

分布式系统的CAP定理

目前只要是大型互联网项目都是采用分布式结构,一个系统可能有多个节点组成,每个节点都可能需要维护一份数据。那么如何维护各个节点之间的状态,如何保障各个节点之间数据的同步问题就是大家急需关注的事情了。CAP定理是分布式系统中最基础的原…

CAP 定理的含义

看到一篇很好的关于 CAP 定理的博文,顺便转发一下,by:阮一峰 分布式系统(distributed system)正变得越来越重要,大型网站几乎都是分布式的。 分布式系统的最大难点,就是各个节点的状态如何同步。…

CAP定理和BASE理论

2000 年的时候,Eric Brewer 教授提出了 CAP 猜想,2年后,被 Seth Gilbert 和 Nancy Lynch 从理论上证明了猜想的可能性,从此,CAP 理论正式在学术上成为了分布式计算领域的公认定理。并深深的影响了分布式计算的发展。 …

分布式-CAP定理

在分布式学习中,我们经常遇到一个概念便是CAP,它是分布式很重要的理论基础。很多分布式算法也是在不断的在解决相关问题,今天就让我们重新学习或者回顾一下这个知识点吧,加深印象打牢基础。 一、简介 CAP定理(CAP theo…

佳文分享:CAP定理

1976年6月4号,周5,在远离音乐会大厅的一个楼上的房间内,在位于Manchester的Lesser Free Trade Hall ,Sex Pistols 乐队(注:Sex Pistols的经理人Malcolm McLaren 2010.4.8去世)开始了他们的第一次…

谈谈对CAP定理的理解

谈谈对CAP定理的理解 CAP定理的常规解释是任何分布式系统只能在一致性(Consitency),可用性(Availability)和分区容忍性(Partition Tolerance)中三选二。这个解释很让人费解,笔者在看了一些文章后谈谈我对它的理解,还请斧正。 从问题出发 假设…

分布式系统的 CAP 定理

CAP定理指出,在一个分布式系统中,对于一致性、可用性、分区容错这三个特性,不可能同时满足,而是必须有所舍弃。我们设计分布式系统时,必须在三者之间(尤其是一致性和可用性之间)有所取舍和平衡。…

简述CAP定理

CAP定理示意图: 一.CAP理论概述: CAP定理告诉我们,一个分布式系统不可能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三个基本需求&…

CAP定理的含义

目录 定理解读 如何抉择 1998年,加州大学的计算机科学家 Eric Brewer 提出了分布式系统的三个指标: C:Consistency,一致性。在分布式系统中的所有数据备份,在同一时刻具有同样的值,所有节点在同一时刻读…

CAP定理是什么?

写在前面 本文隶属于专栏《100个问题搞定大数据理论体系》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢! 本专栏目录结构和文献引用请见100个问题搞定大数据理论体系 解答 分布式系统不…

分布式CAP定理,为什么不能同时满足三个特性?

在弄清楚这个问题之前,我们先了解一下什么是分布式的CAP定理。 根据百度百科的定义,CAP定理又称CAP原则,指的是在一个分布式系统中,Consistency(一致性)、 Availability(可用性)、P…

AMBA总线理解-AXI总线

AXI的设计目标是可以在高始终频率下运行,并且在迟滞时间长的情况下也可以达到高数据吞吐率。他可以将读/写请求和读/写结果相互分离,将数据写入和数据读出的信号分类,并且可以同时进行写入和读出的动作,因此可以大幅度提升数据吞吐…

Zynq AXI总线

S02_CH12_ AXI_Lite 总线详解 - 米联客 - 博客园 12.1前言 ZYNQ拥有ARMFPGA这个神奇的架构,那么ARM和FPGA究竟是如何进行通信的呢?本章通过剖析AXI总线源码,来一探其中的秘密。 12.2 AXI总线与ZYNQ的关系 AXI(Advanced eXtens…

AXI总线协议介绍

AXI总线协议介绍 AXI(Advanced eXtensible Interface)协议是一种面向高性能、高带宽系统设计的总线协议,能够满足各种高速系统的总线协议,能够满足各种高速系统的总线互连。 AXI协议的主要特点有: 独立的地址,控制和数据接口支持使用字节选通的不对齐数据的传输基于特定地…

AXI总线入门

介绍【只要涉及到芯片内部交换都是涉及到AXI协议】 ZYNQFPGAARM 两者间的数据传输 AXI(Advanced extensible Interface)高级外设总线协议,协议是一种通用总线协议,AXI协议是ARM AMBA(Advanced Microcontroller Bus Arc…

AXI 总线协议学习笔记(4)

引言 前面两篇博文从简单介绍的角度说明了 AXI协议规范。 AXI 总线协议学习笔记(2) AXI 总线协议学习笔记(3) 从本篇开始,详细翻译并学习AXI协议的官方发布规范。 AXI总线协议,是一个处于不断发展和完…

浅谈AXI总线

这篇博客在写之前借鉴了网上各位大佬对AXI总线的理解和总结,在此表示感谢。集合了博客,知乎以及书上对AXI总线的介绍。做以下记录用于自己日后复习和更好的理解。 1:协议简介 Xilinx fpga 从Virtex-6系列开始,内部IP都支持AXI4总…

AXI总线整理总结

AXI总线 一、Definition 嵌入式系统是当今计算机工业发展的一个热点,随着超大规模集成电路的迅速发展,半导体工业进入深亚微米时代,器件特征尺寸越来越小,芯片规模越来越大,可以在单芯片上集成上百万到数亿只晶体管。…

AXI 总线协议学习笔记(3)

引言 上篇文章主要介绍了 AMBA以及AXI协议的基本内容,本文接续前文,继续介绍AXI协议的 原子访问、传输行为和事务顺序等。 AXI 总线协议学习笔记(2)https://blog.csdn.net/qq_43045275/article/details/128824643 原子访问 原子…

AXI总线总结

目录 1 综述 2 AXI通道概述 2.1 综述 2.2 读地址与写地址通道 2.3 读数据通道 2.4 写数据通道 2.5 写响应通道 3 AXI互联结构 4 AXI中使用寄存器切片 5 AXI术语 5.1 AXI组件与拓扑 5.2 AXI传输与存储器类型 6 AXI信号描述 6.1 公共信号 6.2 写地址通道信号 6.3…