1. Seata为何效率高
1.1. 应对面试官的解释
- Seata的解决方案是两阶段提交的升级版,传统两阶段提交资源管理器(RM)放在数据库端,由数据库管理,须要数据库支持XA协议。
- 而Seata把RM从数据库端以jar包的形式移到了应用端,剥离了数据库对XA协议的要求。
- Seata认为咱们对数据库的提交操做90%以上都是成功的,因此咱们能够节省XA协议锁定资源的时间,应用层执行完直接提交就能够释放锁,若是出错须要回滚则锁定到回滚完成
- 因此Seata减小了事务对资源的锁定时间,提升了并发和吞吐量
1.2. Seata的具体使用例子
参考:http://www.javashuo.com/article/p-vxtwykhl-bh.html
或直接查看官网githubgit