分布式事务的理解

分布式事务概念性的东西:
1.柔性事务和刚性事务
    刚性事务:遵循ACID原则,强一致性。(单数据库下的事务都是刚性事务)
    柔性事务:遵循BASE理论,最终一致性。允许某个时间节点,数据库的数据不一致,但是最终数据库的数据是一致的。
2.分布式事务的理论基础
    BASE理论:基本可用(Basically Available)、柔性状态(Soft State)、最终一致性(Eventual Consistency)
    CAP理论:一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance);组合方式CP/AP

 

几种实现方式:
1.最大努力送达型事务
    事务A已执行完成,通过消息中间件的形式向事务B发送执行命令,如果事务B未执行成功,那么消息中间件会一直尝试发送执行命令,直到成功。
    应用场景:点赞、转发、评论数量等。
2.补偿型事务
    事务A执行成功并提交,接着执行事务B,事务B执行失败后,回滚事务B的同时,需要将事务A提交的数据,修改为原来的状态。
    应用场景:很多场景都可以使用。
    缺点:对开发人员的能力要求较高。能够理解这样做的原因是什么。
3.异步确保型
    事务A提交成功,用数据库状态做标识,等待事务B执行完成后,事务B通过异步回调的方式,告知事务A自己的执行结果,事务A在根据事务B的执行结果做相应的状态调整。
    应用场景:很多场景都可以使用。最常见的支付回调。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值