AT模式同样是分阶段提交的事务模型。优势是弥补了XA模型中资源锁定周期过长的缺陷。
没有代码入侵,框架自动完成快照生成、回滚和提交。实现非常简单。
两阶段之间属于软状态,属于最终一致。
AT模式
阶段一RM的工作:
1.注册分支事务
2.记录undo-log (数据快照),记录更新前后2个快照。
3.执行业务sql并提交事务
4.报告事务状态
阶段二提交时RM的工作:
删除undo-log即可,异步线程执行,后面慢慢执行删除操作都可以,提高了性能。
阶段二回滚时RM的工作:
根据undo-log恢复数据到更新前
AT模式流程图
AT模式与XA模式的区别?
1.XA模式一阶段