版权声明:本文为CSDN博主「swpu-maniac」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/maniacxx/article/details/81236301

CAP原理与传统的ACID

一 CAP

1.C(Consistency) 强一致性

所有的节点上的数据时刻保持同步。

2.A(Availability) 可用性

每个请求都能接受到一个响应,无论响应成功或失败。

3.P(Partition tolerance) 分区容忍性

系统应该能持续提供服务,即使系统内部有消息丢失(分区)。

4.CAP核心理论

最多只能同时满足两个,因此分为三大类

CA:单点集群,满足一致性,可用性的系统,通常在可扩展性上不太强大。
CP:满足一致性,分区容忍性的系统,通常性能不是特别高。Redis、
AP:满足可用性,分区容忍性的系统,通常可能对一致性要求低一些.。
5.CAP的3进2

分区容忍性必须要实现,所以只能在一致性与可用性之间均衡

CA:传统的Oracle数据库。
CP:Redis、Mongodb。
AP:大多数网站架构。
BASE思想:让系统在某一时刻放松对数据一致性的要求来换取整体伸缩性和性能上的改观

BA(Basically Available) 基本可用
S(Soft state) 软状态
E(Eventually consistent) 最终一致
二 ACID

1.A(Atomicity) 原子性

原子性很好理解就是说事务的所有操作要不全部做完,要不都不做完,事务成功建立在事务的所有操作都进行完成,不会出现执行成功一半的情况,凡是半路出错就会回滚,如A给B转账1000元,步骤是先扣A1000元,再给B加1000元,若不一起完成,就会导致A少了1000元。

2.C(Cinsistency) 一致性

数据库要一致处于一致的状态,事务的运行不会改变数据库原本的一致性约束。

3.I(Isolation) 独立性

独立性是指并发的事务之间不会相互影响,若一个事务A查询的数据正在被事务B进行修改,只要B事务的修改没有提交,A事务访问的数据就不会发生变化。

4.D(Durability) 持久性

持久性是指一旦事务提交后,它所做的修改将会永久的保存在数据库中,即使出现宕机也不会丢失。

CAP原理与传统的ACID相关推荐

  1. FLP不可能原理/CAP原理/ACID原则

    FLP不可能原理:在网络可靠,但允许节点失效(即便只有一个)的最小化异步模型系统中,不存在一个可以解决一致性问题的确定性共识算法. FLP不可能原理实际上告诉人们,不要浪费时间,去为异步分布式系统设计 ...

  2. redis学习之——CAP原理CAP+BASE

    Remote Dictionary Server 分布式系统 分布式系统(distributed system) 由多台计算机和通信的软件组件通过计算机网络连接(本地网络或广域网)组成.分布式系统是建 ...

  3. redis学习-分布式数据库CAP原理

    传统的ACID分别是什么 A (Atomicity) 原子性 C (Consistency) 一致性 I (Isolation) 独立性 D (Durability) 持久性 关系型数据库遵循ACID ...

  4. NOSQL的cap 原理

    传统的ACID是什么 1. A(Atomicity)原子性: 事务里的所有操作要么全部做完,要么都不做,事务成功的条件是事务中的所有操作都成功,只要有一个操作失败,整个事务失败,需要回滚. 2. C( ...

  5. 分布式数据库CAP原理

    分布式数据库CAP原理 CAP简介 CAP理论 CAP总结 CAP简介 传统的关系型数据库事务具备ACID: (1)A :原子性 (2)C :一致性 (3)I :独立性 (4)D :持久性 分布式数据 ...

  6. 分布式数据库中CAP原理CAP+BASE

    一.传统的ACID 分别是什么 1.A: atomicity 原子性 2.C: Consistency 一致性 3.I: Isolation 独立性 4.D: Duraility 持久性 二.CAP ...

  7. 数据库中的CAP原理

    去年在参加盒子科技秋招笔试题中遇到过,印象深刻,一直想要查资料总结下来. 这个理论是由美国著名科学家,同时也是著名互联网企业Inktomi的创始人Eric Brewer在2000年PODC(Sympo ...

  8. CAP原理应用与分布式矩阵

    CAP原理是描述一致性,可用性,和分区兼容性的理论,但这个原理用在实际情况下时往往让人很困惑.什么样的情况适用于这样的原理?有哪些先决条件?如何创建一个同时满足一致性和可用性,分区兼容性的分布式系统? ...

  9. 深入理解分布式CAP原理

    hi,大家好,互联网最重要任务莫过于海量数据处理,即大规模分布式系统(单机性能有限),分布式是互联网的核心技术,希望大家可以掌握. 什么是 CAP? 作者:聂鹏程,文章来源极客时间 --分布式技术原理 ...

最新文章

  1. 多行列表右边距为零的实现方法
  2. WinRAR4.11-64Bit最简易的注册方法
  3. [MIPS汇编语言]InsertionSort插入排序
  4. apache isis_使用Apache Isis快速进行SEMAT应用程序开发
  5. OpenShift上具有NetBeans的Java EE
  6. ocp跟oce的区别 oracle_Oracle视频10g 11g认证视频教程 OCA/OCP 从入门到精通 数据库DBA...
  7. CSS 实现必填项前/后添加红色星号
  8. expect 赋值shell变量_Shell处理字符串常用技巧终结篇
  9. 01-eclipse打包运行程序总是报错java.lang.NoClassDefFoundError和ava.lang.ClassNotFoundException(打包原理)
  10. Linux使用cpuset设置CPU独占
  11. linux r后台执行,screen 命令简单用法 Linux后台执行 就用它
  12. 使用分治思想求解最大子序列
  13. 基于麻雀算法优化的相关向量机RVM分类算法
  14. Mac OS开启黑暗模式
  15. 唐宇迪学习笔记19:聚类算法——Kmeans
  16. JBoss下载与安装
  17. session json()中文乱码_[Win] FTP传输工具 FlashFxp v5.4.0 build3970 中文便携版
  18. Ubuntu18.04安装教程
  19. Photoshop之通道抠图,适用于扣人像,树叶等细微抠图
  20. 在Excel中批量生成条形码

热门文章

  1. jQuery事件总结(二)
  2. Util-linux
  3. 拥有有趣灵魂的程序员们,程序员访谈(一)
  4. 记将title(复杂字符串)放入URL时遇到的一些问题(`Model has no value for key ‘[‘`;重定向;中文乱码;URLEncoder;正则替换)
  5. 高斯白噪声的统计特性
  6. 顺序表--C语言版(从0开始,超详细解析 ,小白一听就懂!!!)
  7. Weighted average
  8. Anaconda - 安装以及使用
  9. z怎么查看mysql的用户名_怎么查看mysql的用户名和密码
  10. SSM项目之注册页面知识点整理