分布式之CAP理论与BASE理论

CAP理论

CAP:一致性(consistency)、可用性(Availability)、分区容错(partition-tolerance)。CAP定律说的是在一个分布式计算机系统中,一致性,可用性和分区容错性这三种保证无法同时得到满足,最多满足两个。

C:强一致性

系统在执行过某项操作后仍然处于一致的状态。在分布式系统中,更新操作执行成功后所有的用户都应该读到最新的值,这样的系统被认为是具有强一致性的。 等同于所有节点访问同一份最新的数据副本;

A:可用性

每一个操作总是能够在一定的时间内返回结果,这里需要注意的是"一定时间内"和"返回结果"。一定时间指的是,在可以容忍的范围内返回结果,结果可以是成功或者失败。 对数据更新具备高可用性;

P:分区容错性

理解为在存在网络分区的情况下,仍然可以接受请求(满足一致性和可用性)。这里的网络分区是指由于某种原因,网络被分成若干个孤立的区域,而区域之间互不相通。还有一些人将分区容错性理解为系统对节点动态加入和离开的能力,因为节点的加入和离开可以认为是集群内部的网络分区。

Partition Tolerance的意思是,在网络中断,消息丢失的情况下,系统照样能够工作。 以实际效果而言,分区相当于对通信的时限要求。系统如果不能在时限内达成数据一致性,就意味着发生了分区的情况,必须就当前操作在C和A之间做出选择.

一致性(C)与可用性(A)的决择:

CAP理论就是说在分布式存储系统中,最多只能实现上面的两点。而由于当前的网络硬件肯定 会出现延迟丢包等问题,所以分区容忍性是我们必须需要实现的。所以我们只能在一致性和可用 性之间进行权衡。

常见的CP和AP系统:

  • CP: Zookeeper
  • AP: Eureka

BASE理论

BASE理论是Basically Available(基本可用)、Soft state(软状态)和Eventually consistent(最终一致性)三个短语的缩写。

BASE理论是对CAP中一致性和可用性权衡的结果,其来源于对大型互联网分布式实践的总结,是基于CAP定理逐步演化而来的。

其核心思想是:既是无法做到强一致性(Strong consistency),但每个应用都可以根据自身的业务特点,采用适当的方式来使系统达到最终一致性(Eventual consistency)。

相关推荐
covco1 小时前
分布式架构实战:全平台矩阵管理系统的技术实现与性能优化
分布式·矩阵·架构
gQ85v10Db6 小时前
Redis分布式锁进阶第三十一篇
数据库·redis·分布式
未若君雅裁10 小时前
Redis 分布式锁与 Redisson:从抢券超卖讲到 WatchDog、可重入和 RedLock
redis·分布式
一只普通的码农11 小时前
Filebeat 在windows环境部署并结合kafka使用
分布式·kafka
covco12 小时前
AI 原生营销矩阵系统:分布式架构设计与核心模块实现
人工智能·分布式·矩阵
Java识堂13 小时前
Kafka 如何保证消息的可靠性投递?
分布式·kafka
gQ85v10Db14 小时前
Redis分布式锁进阶第三十二篇
数据库·redis·分布式
gQ85v10Db14 小时前
Redis分布式锁进阶第三十篇
数据库·redis·分布式
爱吃苹果的梨叔14 小时前
2026年清虹分布式坐席系统如何破局技术内卷与运维成本困局
运维·分布式
heimeiyingwang14 小时前
【架构实战】分布式事务Seata-AT:解决跨服务数据一致性的终极方案
分布式·架构