云梦模板网站优缺点,门户网站建设管理典型经验,怎样建立一个主题网站,宣传片素材视频免费下载微服务之分布式事务概念
CAP定理和Base理论
CAP定理
CAP定理在1998年被加州大学的计算机科学家 Eric Brewer 提出#xff0c;分布式系统有三个指标#xff1a;
一致性#xff08;Consistency#xff09;可用性#xff08;Availability#xff09;分区容错性#xff…微服务之分布式事务概念
CAP定理和Base理论
CAP定理
CAP定理在1998年被加州大学的计算机科学家 Eric Brewer 提出分布式系统有三个指标
一致性Consistency可用性Availability分区容错性Partition Tolerance Eric Brewer认为分布式系统无法同时满足这三个指标这个结论就叫CAP定理。
一致性指的是用户访问分布式系统中的任何一个节点得到的数据必须一致。即需要考虑分布式系统中的节点如何进行数据同步。 可用性是用户访问任意一个健康的节点必须能得到响应而不是超时或者拒绝。
分区容错性中的分区指的是是当系统因为网络故障或者某个节点与其它节点失去连接而形成独立分区时。容错性指的是在集群中出现分区时整个系统也要能够持续对外提供服务。 总结一下分布式系统一定要满足分区容错性如果不能满足分区容错性那就和单体系统没有区别了一旦出现问题整个系统就不可用了。 分布式系统一定会出现分区问题即P这个时候不可能同时满足C和A。
Base理论
Base理论是对CAP的一种解决思路它包含三个思想
基本可用分布式系统出现故障时允许损失部分可用性即保证核心可用Soft State在一定时间内允许出现中间状态比如临时的不一致状态最终一致性虽然无法保证强一致性但是在中间状态结束后最终达到数据一致性。
分布式事务最大的问题是各个子事务的一致性问题因此可以借鉴CAP定理和BASE理论
AP模式各子事务分别执行提交允许出现结果不一致然后采用弥补措施恢复即可实现最终一致性CP模式各个子事务执行后互相等待同时提交同时回滚达成强一致性但事务等待过程中处于弱可用状态。
分布式事务概念
在分布式系统下一个业务的执行可能会跨越多个服务或者数据源在每一个服务中的执行都是一个事务要保证所有的事务最终状态一致这样的事务就是分布式事务。
分布式事务模型
为了解决分布式事务的问题需要各个子系统能感知到彼此事务的状态当其中一个系统的事务出现问题时则所有子系统全部回滚事务如果子系统的事务没有问题则再全部提交这样就能保持状态一致。因此需要一个事务协调者来协调每一个事务的参与者子系统事务。
**
原子提交协议
原子提交协议是一种分布式事务处理协议使用这种协议可以保证分布式事务的原子性、一致性、隔离性和持久性。原子提交协议通过协调多个事务参与者确保事务要么全部成功要么全部失败。原子提交协议可以基于Paxos算法和基于Raft算法实现。原子提交协议也适用于分布式数据库、分布式文件系统。 常见的原子提交协议有二阶段提交协议2PC和三阶段提交协议3PC。 原子提交协议包括两个阶段
第一阶段在准备阶段协调者向所有参与者发送准备消息参与者会检查事务是否可以提交如果可以则进入提交阶段否则回滚事务第二阶段协调者根据参与者的响应决定是否提交事务
三阶段提交协议在第一阶段和第二天阶段之间增加了一个预提交阶段协调者根据参与者的响应决定是否进入第二阶段。
参考
5种分布式事务解决方案Seata官网微服务分布式事务4种解决方案实战分布式事务二之两阶段提交Spring-Cloud-alibaba版本依赖关系