分布式事务 中间件 Seata学习 四 官方文档03_段提交协议


分布式事务 中间件 Seata学习 四 官方文档03_日志记录_02

两阶段提交协议的演变:

  • 一阶段:业务数据和回滚日志记录在同一个本地事务中提交,释放本地锁和连接资源。
  • 二阶段:
  • 提交异步化,非常快速地完成。
  • 回滚通过一阶段的回滚日志进行反向补偿。

分布式事务 中间件 Seata学习 四 官方文档03_回滚_03


在一阶段事务提交前,确保拿到全局锁;


分布式事务 中间件 Seata学习 四 官方文档03_段提交协议_04


分布式事务 中间件 Seata学习 四 官方文档03_数据_05

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

分布式事务 中间件 Seata学习 四 官方文档03_段提交协议_06


分布式事务 中间件 Seata学习 四 官方文档03_数据_07


tx1拿到全局锁,tx2拿不到全局锁,就会不停重试,一直到超时放弃等待全局锁 并且释放本地锁。此时重试会阻塞查询,一直到拿到全局锁,才能读tx1已提交的数据