分布式理论--BASE

目录

    • 是什么
    • [BASE 与 CAP,ACID 的区别](#BASE 与 CAP,ACID 的区别)
    • [BASE 和 Paxos 类共识算法的区别](#BASE 和 Paxos 类共识算法的区别)
    • 相关问题

是什么

  • BASE 理论是对 CAP 理论的进一步扩展
  • 主要强调在分布式系统中,为了获得更高的可用性和性能,可以放宽对一致性的要求,是对 CAP 中 AP 方案的一个补充。
  • BA(Basically Available):基本可用,系统在面对分区故障时,允许牺牲部分可用性(比如响应时间延长点,系统的非核心功能暂不可用),并不是不可用。
  • S(Soft State):软状态,允许系统中存在一种软状态(短时间内的数据不一致状态,如果是实时一致则为硬状态)
  • E(Eventual consistency):最终一致性,虽然系统中存在数据不一致的状态,但是经过固定的时间间隔后,必须数据一致。也就是最终必须是一致的。

BASE 与 CAP,ACID 的区别

  • ACID 是事物的基本特性,属于单体系统的范畴,同时由于是本地事务,可以归属于强一致性模型
  • CAP 和 BASE 都是分布式系统的基本理论,BASE 又是 CAP 的进一步发展
  • CAP 中的一致性也可归属到强一致性模型,BASE 可以归属到弱一致性模型,BASE理论面向的是大型高可用、可扩展的分布式系统。

BASE 和 Paxos 类共识算法的区别

  • 一个是描述数据一致性的模型,一个是描述共识的模型
  • 数据一致性的目标是确保系统中的数据副本具有一致的状态,即任何时候任何节点的数据都是一致的。
    共识的目标是在面对部分节点故障或网络分区的情况下,使得系统能够就某个值或顺序达成一致,以保证系统的正确性和可用性。

相关问题

  • 数据一致性和共识的区别
  • 强一致性和弱一致性
  • 共识算法
相关推荐
今年下半年10 小时前
【Spring Boot】多种存储文件(FastDFS / MinIO / 阿里云 OSS)接入设计说明(附源码)
spring boot·分布式·中间件·简单工厂模式·策略模式
ShineWinsu11 小时前
对于Redis:string类型的解析
java·c++·redis·分布式·缓存·面试·string
仍然.15 小时前
RabbitMQ---可靠性传输
网络·分布式·rabbitmq
灯澜忆梦17 小时前
【RabbitMQ #13】 | 延迟消息
分布式·rabbitmq·ruby
青山木17 小时前
秒杀系统设计(二):数据正确性——防超卖、分布式锁与一人一单
分布式·后端·mysql·中间件·架构
weixin_424183611 天前
开放—封闭原则实战(下):基于策略的流程编排与编译期多态
c++·分布式·系统架构
frjc1 天前
分布式事务:场景与选型决策表
分布式
GISMagic1 天前
5.《Designing Data-Intensive Applications》:系统设计与分布式能力提炼
分布式·ai coding
需要8261 天前
分布式 ID 生成:雪花算法、号段模式与时钟回拨
分布式·算法
灯澜忆梦2 天前
【RabbitMQ #11】 | 消费者可靠性
分布式·rabbitmq·ruby