使用seata在解决分布式事务中遇到的一些常见问题

背景:

随着微服务架构的流行,分布式事务作为必须要面对和解决的课题,业界也存在着多种解决方案。例如:两阶段提交、TCC(try、confirm、cancel)、借助于消息队列的等等。但这些要么不能很好地保证数据的一致性,要么就是实现起来复杂度比较高,还有就是业务的侵入性。

seata作为一个分布式事务框架,最开始吸引我的地方,就是他的AT模式,不但避免了业务的侵入性,降低开发的复杂度,而且它的异步提交策略(如果一阶段分支事务成功提交,则二阶段一开始,全局锁即被释放,否则,直到二阶段回滚完成才能释放全局锁)在保证数据一致性的前提下,尽可能的提高了分布式事务的效率。

关于原理性的内容可以参照githup(https://github.com/seata/seata),我就不多赘述了。

我主要采用了seata提供的AT模式,下面主要介绍一下,我在使用seata解决分布式事务时遇到的一些问题和怎么解决的。

我使用的是0.9.0版本,有些问题已经被新版本修复,下面会用加粗斜体标识,也建议大家去使用1.0版本,当然这里遇到的一些问题,也可以参考一下

==================================================================

首先贴出我的pom主要依赖:

  • 2
    点赞
  • 22
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值