CAP与BASE 博客分类: 分布式架构 分布式架构CAPBASE
程序员文章站
2024-03-17 19:12:22
...
分布式领域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最终一致,最终数据是一致的就可以了,而不是实时高一致。
推荐阅读
-
CAP与BASE 博客分类: 分布式架构 分布式架构CAPBASE
-
Java分布式应用技术架构介绍 博客分类: JavaEE java分布式缓存集群分库分表
-
集群高可用架构整理(不断更新) 博客分类: 分布式 集群高可用分布式
-
Kafka的分布式架构设计与High Availability机制 博客分类: kafka kafka分布式busHAHigh Availability
-
分布式配置文件管理工具disconf部署以及运用 博客分类: 架构相关 分布式配置文件管理
-
zeus持久层spring事务单元测试 博客分类: 持久层架构分布式sharding开源 javaspringjdbcdao
-
Step By Step实现分布式服务访问框架 博客分类: 编程随笔 分布式服务框架架构java实现
-
荐 极客大学架构师训练营 系统架构 分布式数据库 数据分片 业务分库 CAP ACID BASE 第11课 听课总结
-
荐 极客大学架构师训练营 系统架构 分布式数据库 数据分片 业务分库 CAP ACID BASE 第11课 听课总结