我是靠谱客的博主 潇洒舞蹈,最近开发中收集的这篇文章主要介绍分布式系统 - CAP、BASE原理以及ACID,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

CAP定理

consistency: all nodes see the same data at the same time.
available: Reads and writes always succeed.
Partition tolerance: the system continues to operate despite arbitrary message loss or failure of part of the system.

在一个分布式系统中,CAP定理的三个特性在同一时间只能保证两个。

  1. 一致性:在更新操作完成之后,所有节点的数据在同一时间是一致的。
  2. 可用性:服务一直可用,且其响应时间在正常范围之内。
  3. 分区容错性:在分布式系统遇到某些节点或者网络错误时,仍然能够对外提供满足一致性或者可用性的服务(即容错性呗,在某些节点挂掉之后,还能够保证系统正常运行)。
    CAP原理举例参考

BASE定理

BASE理论也有三个特性,基本可用性、软状态、最终一致性。

BASE理论是在CAP定理的基础上做的一种延申,其核心思想是,即使无法做到强一致性,也要采用适当的方式达到最终一致性。

  1. 基本可用性:在系统出现故障的时候,允许损失部分可用性,保证核心可用。
  2. 软状态:允许系统存在中间状态,而中间状态不会影响系统整体可用性。(分布式存储中一般一份数据会有三个副本,允许不同节点间副本的延时就是软状态的体现。)
  3. 最终一致性:系统中的所有副本,在经过一定时间后,最终能够达到数据一致性。(最终一致性是弱一致性的体现)

ACID

ACID是传统的关系型数据库设计理念,追求一致性模型。BASE支持的是大型分布式系统,提出通过牺牲一致性获得高可用性。

ACID 和 BASE 是两种不同的设计哲学

系统组件对一致性要求不同,有时ACID和BASE结合使用


参考文献

CAP原则(CAP定理)、BASE理论

CAP和BASE理论

最后

以上就是潇洒舞蹈为你收集整理的分布式系统 - CAP、BASE原理以及ACID的全部内容,希望文章能够帮你解决分布式系统 - CAP、BASE原理以及ACID所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(58)

评论列表共有 0 条评论

立即
投稿
返回
顶部