分布式事务中ByteTCC框架Cancel操作详解.pdf

分布式事务中ByteTCC框架Cancel操作详解.pdf

大家可以想象一下,这个数据库里记录的东西究竟是什么?

在一个分布式事务中,比如资金服务,对应的bytejta表里必然会有两条记录。第一条记录

表明:当该服务执行了try接口后,就会生成这条记录。

但如果只有一条记录,就说明这个事务肯定没有完整执行。

必须存在两条记录——第二条记录代表confirm或cancel,这个分布式事务才算是完成了。

刚才执行的事务回滚,实际上是抽奖服务报错后,在其本地回滚了之前报错的事务。

由于刚才的分布式事务未成功,重启流量充值服务后,其本地记录的分布式事务日志会感

知到上个事务未完成,将自动触发资金服务和订单服务执行cancel操作。

res

文档评论(0)

1亿VIP精品文档

相关文档