Seata AT模式是最早⽀持的模式。AT模式是指Automatic (Branch)Transaction Mode⾃动化分⽀事务。
(1)AT模式的核心组件:
维护全局和分支事务的状态;
维护全局锁的状态;
接受TM的提交或者回滚命令,联系RM进行分支事务的提交或者回滚。
开启全局事务,向TC申请全局事务ID;
根据TC反馈的分支事务结果来决定提交或者回滚;
告诉TC提交或者回滚一个全局事务;
管理执行分支事务的那些资源;
向TC注册分支事务、上报分支事务状态、控制分支事务的提交或者回滚;
(2)事务流程:
(3)典型问题:
如果回滚的时候,进行数据核验的时候,发现数据被其他应用修改了,该怎么办?
at是要保证所有操作数据库的动作都在seata事务的全局事务覆盖下。也就是说,如果你这个库的这个表被其他应用用了,让这个应用也集成seata就行了。