如上层业务系统为支付系统,下层业务系统为库存系统
如果支付完成走到库存这一块,但是遇到库存不足的情况。是否只能手动写补偿机制?
最后想问下,分布式事务有好的文章可以推荐下的嘛。谢谢!
如上层业务系统为支付系统,下层业务系统为库存系统
如果支付完成走到库存这一块,但是遇到库存不足的情况。是否只能手动写补偿机制?
最后想问下,分布式事务有好的文章可以推荐下的嘛。谢谢!
15 回答8.4k 阅读
8 回答6.2k 阅读
1 回答4.1k 阅读✓ 已解决
3 回答2.2k 阅读✓ 已解决
2 回答3.1k 阅读
2 回答3.8k 阅读
3 回答1.7k 阅读✓ 已解决
如果按照你图中的流程,那就需要引入分布式事务。
如果是基于XA协议(两阶段提交),这种叫做刚性事务,侵入性小,方案成熟,但是不适合高并发高性能的环境,因为会锁定全局资源。
可以考虑柔性事务,强调最终一致性。方案有最大努力送达、Saga、TCC(TCC需要业务方改造代码)。可以看下蚂蚁开源的Seeta。
相关的文章我比较喜欢的还是《未来架构:从服务化到云原生》里面9.4.2节,讲了分布式事务的基本理论,现有方案的对比等。博客看了一些但没有印象深刻的。(微信读书有无限卡的话可以免费阅读。整一大章节讲的是数据库。)
希望可以帮到你。