分布式事物

分布式事务确保跨多个服务或数据源的业务保持一致性。CAP定理指出,分布式系统无法同时保证一致性、可用性和分区容错性。BASE理论提供了在CAP基础上的解决方案,主张基本可用、软状态和最终一致性。在处理分布式事务时,可以采用AP或CP模式。全局事务和分支事务的概念被用来管理和协调事务参与者,以达到一致性。最终,分布式事务的挑战在于如何在可能的不一致中恢复数据,实现最终一致性。
摘要由CSDN通过智能技术生成

什么是分布式事物?

在分布式系统下,一个业务跨越多个服务或者数据源,每个服务都是一个分支事物,要保证所有分支事物最终状态一致,这样的事物就是分布式事物。

分布式事务的简单案例:

微服务下单业务,在下单时会调用订单服务,创建订单并写入数据库,然后订单服务调用账户服务和库存服务: 

账户服务负责扣减用户余额

库存服务负责扣减商品库存

CAP定理

分布式系统有三个指标,但是分布式系统无法同时满足这三个指标:

Consistency (一致性)
Availability (可用性)
Partition tolerance (分区容错性)

 

 

Consistency

Consistency(一致性):用户访问分布式系统中的任意节点,得到的数据必须一致

 

  Availability

Availability (可用性):用户访问集群中的任意健康节点,必须能得到响应,而不是超时或拒绝

Partition tolerance

Partition(分区):因为网络故障或其它原因导致分布式系统中的部分节点与其它节点失去连接,形成独立分区。

Tolerance(容错):在集群出现分区时,整个系统也要持续对外提供服务

 分布式系统节点通过网络连接,一定会出现分区问题(P),当分区出现时,系统的一致性(C)和可用性(A)就无法同时满足

BASE理论

BASE理论是对CAP的一种解决思路,包含三个思想:

Basically Available (基本可用) :分布式系统在出现故障时,允许损失部分可用性,即保证核心可用。
Soft State (软状态): 在一定时间内,允许出现中间状态,比如临时的不一致状态。

       Eventually Consistent(最终一致性):虽然无法保证强一致性,但是在软状态结束后,         最终达到数据一致

而分布式事务最大的问题是各个子事务的一致性问题,因此可以借鉴CAP定理和BASE理论:

AP 模式:各子事务分别执行和提交,允许出现结果不一致,然后采用弥补措施恢复数据即可,实现 最终一致。
CP 模式:各个子事务执行后互相等待,同时提交,同时回滚,达成 强一致 。但事务等待过程中,处于弱可用状态。

 分布式事务模型

解决分布式事务问题,各个子系统之间必须能感知到彼此的事务状态,才能保证状态一致,因此需要一个事务协调者来协调每一个事务的参与者(分支事务)。

有关联的各个分支事务在一起称为全局事务

 

 总结

简述BASE理论三个思想:

基本可用
软状态
最终一致

解决分布式事务的思想和模型:

全局事务:整个分布式事务
分支事务:分布式事务中包含的每个子系统的事务
最终一致思想:各分支事务分别执行并提交,如果有不一致的情况,再想办法恢复数据
强一致思想:各分支事务执行完业务不要提交,等待彼此结果,而后统一提交或回滚

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值