`

CAP与BASE

阅读更多
分布式领域CAP理论:
Consistency(一致性), 数据一致更新,所有数据变动都是同步的
Availability(可用性), 好的响应性能
Partition tolerance(分区容错性) 可靠性

定理:任何分布式系统只可同时满足二点,没法三者兼顾。
忠告:架构师不要将精力浪费在如何设计能满足三者的完美分布式系统,而是应该进行取舍。

关系数据库的ACID模型拥有 高一致性 + 可靠性 丧失可用性:
Atomicity原子性:一个事务中所有操作都必须全部完成,要么全部不完成。
Consistency一致性. 在事务开始或结束时,数据库应该在一致状态。
Isolation隔离层. 事务将假定只有它自己在操作数据库,彼此不知晓。
Durability. 一旦事务完成,就不能返回。
跨数据库事务:2PC (two-phase commit), 2PC is the anti-scalability pattern (Pat Helland) 是反可伸缩模式的,JavaEE中的JTA事务可以支持2PC。因为2PC是反模式,尽量不要使用2PC,使用BASE来回避。

BASE模型反ACID模型,完全不同ACID模型,牺牲高一致性,获得可用性或可靠性:
Basically Available基本可用。支持分区失败(e.g. sharding碎片划分数据库)
Soft state软状态 状态可以有一段时间不同步,异步。
Eventually consistent最终一致,最终数据是一致的就可以了,而不是实时高一致。

 

分享到:
评论

相关推荐

    分布式系统一致性(ACID、CAP、BASE、二段提交、三段提交、TCC、幂等性)原理详解1

    在本文中,我们将深入探讨几种重要的理论和实践方法,包括ACID特性、CAP定理、BASE原则,以及几种常见的分布式事务处理协议:二段提交、三段提交和TCC(Try-Confirm-Cancel)模式,同时也会提到幂等性这一关键概念。...

    CAP原理和BASE思想.docx

    CAP原理和BASE思想是分布式系统设计的重要理论基础,它们帮助开发者在一致性、可用性和分区容错性之间做出明智的决策。而NoSQL运动则提供了更多适应现代分布式环境的数据存储解决方案,这些解决方案通常基于BASE思想...

    50w字程序员面试宝典

    你需要熟悉微服务架构、CAP理论、CAP与BASE的区别、RESTful API设计原则等。 七、软件工程 软件工程方面的知识包括敏捷开发、版本控制(Git)、代码审查、持续集成/持续部署(CI/CD)等实践。理解软件开发的生命...

    一些 知名企业的笔试面试题

    - 分布式系统:CAP理论、CAP与BASE原则 8. 人工智能与机器学习: - 基本概念:监督学习、无监督学习、强化学习 - 常用算法:线性回归、逻辑回归、决策树、随机森林、支持向量机、神经网络 - 深度学习框架:...

    大厂后端面试题,之前积累的部分题目

    9. **系统设计与架构**:高可用、高并发的设计策略,负载均衡,分布式存储,数据库分库分表,CAP与BASE理论。 10. **其他**:代码优化、性能调优,设计模式,单元测试,代码版本控制(Git)等。 准备这些知识点...

    亿级流量网站架构核心技术

    分布式服务、微服务架构、CAP理论、CAP与BASE原则、服务发现(如Consul、Eureka)以及分布式一致性算法(如Paxos、Raft)都是书中深入讨论的内容。 3. **数据存储与处理**:大数据存储与处理是亿级流量网站不可或缺...

    15套大型分布式电商项目实战课程

    这些课程可能涵盖分布式计算的基本概念,如CAP理论、CAP与BASE理论,以及如何在分布式环境中实现数据一致性。 2. **微服务架构**:现代电商项目常采用微服务架构,将单一应用拆分为一组小型、独立的服务,每个服务...

    金融级数据库分布式改造的架构设计方案.docx

    五、CAP 与 BASE 的抉择 在分布式系统中,CAP原理指出一个系统无法同时满足一致性(Consistency)、可用性(Availability)和分区容忍性(Partition Tolerance)。在金融级数据库中,通常会选择牺牲一定的可用性来...

    大公司面试题

    8. **分布式系统**:负载均衡、CAP理论、CAP与BASE理论、分布式锁、分布式事务处理、分布式缓存(如Redis)。 9. **容器与虚拟化**:Docker容器化技术,Kubernetes(K8s)容器编排系统,以及虚拟化技术如VMware和...

    CAP、BASE、ACID区分

    CAP、BASE、ACID区分 一、CAP CAP是分布式计算领域的公认定理。 1、一致性(Consistency) all nodes see the same data at the same time 在同一时间看见所有节点的数据是一致的 所有节点返回的数据都是一样的,...

    国内外知名IT企业面试题汇总

    8. **系统架构**:微服务、分布式系统、负载均衡、CAP理论、CAP与BASE的区别、分布式一致性等,这些都是大型IT企业面试的重要组成部分。 9. **云计算与大数据**:对AWS、Azure、阿里云等云服务的了解,Hadoop、...

    java面试题大全-葵花宝典和面试编程

    5. 分布式:了解分布式系统的设计原则,如CAP定理、CAP与BASE理论。 六、算法与数据结构 虽然Java面试更偏重实践,但基础的算法和数据结构知识也不能忽视,如排序算法、查找算法、图论、树结构等。 这份"java面试...

    程序员面试题大合集

    面试者可能需要解释如何设计一个高可用、高性能的系统,或者解决分布式系统中的问题,如CAP定理、CAP与BASE理论、分布式一致性、负载均衡等。网络知识,如TCP/IP协议、HTTP协议、套接字编程等,也是面试中常见的技术...

    BAT 1000道互联网Java工程师面试题

    14. **分布式系统**:CAP理论、CAP与BASE的区别、分布式一致性算法(Paxos、Raft)等。 15. **性能调优**:代码性能优化、数据库查询优化、系统调优等。 16. **职业素养**:项目管理、团队协作、沟通能力、自我...

    java面试

    14. **架构设计与分布式**:微服务架构、负载均衡、CAP定理、CAP与BASE理论、分布式事务处理等,对于高级职位的面试尤为关键。 以上内容只是Java面试题库中的一部分,实际的面试可能会结合具体项目经验和技术趋势...

    CAP理论+BASE理论

    CAP理论:一个分布式系统不可能同时满足一致性(Consistence)、可用性(Availability)、分区容错性(Partition tolerance),最多只能同时满足两个(CA / CP / AP)。 一致性(Consistence):在某个写操作完成后...

    sunweiguo#swgBook-for-spring-cloud#Zookeeper笔记01-CAP和BASE理论1

    前言学习zookeeper才算是真正跨进分布式这个大门。比较经典的应用是可以作为dubbo推荐的注册中心。首先,我们必须要明确几个我们之前可能不会遇到的但是在分

    OceanBase企业级数据库介绍.pptx

    OceanBase 遵循 CAP 理论,即一致性、可用性和分区容忍性。该理论是分布式系统的基础,确保了系统的可靠性和可扩展性。 Paxos 和 Raft: OceanBase 使用 Paxos 和 Raft 两种协议来实现分布式事务和可靠性。Paxos ...

    OceanBase企业级分布式数据库介绍.pdf

    OceanBase使用Paxos协议来解决CAP问题,实现了高可用性和高一致性。 Raft协议 Raft协议是一种分布式一致性协议,用于解决分布式系统中的数据一致性问题。它可以确保分布式系统中的数据是一致的,避免了数据不...

Global site tag (gtag.js) - Google Analytics