分布式事务Seata
SEATA
四种模式:AT、TCC、SAGA、XA 四种模式
AT
基于两阶段协议的演变
一阶段 prepare 行为:在本地事务中,一并提交业务数据更新和相应回滚日志记录。
二阶段 commit 行为:马上成功结束,自动 异步批量清理回滚日志。
二阶段 rollback 行为:通过回滚日志,自动 生成补偿操作,完成数据回滚。
扩展阅读:https://seata.io/zh-cn/docs/overview/what-is-seata.html
AT与TCC的主要区别
- 都是基于两阶段提交模型
- AT适用于底层数据资源本身支持事务的场景
- TCC,底层数据资源不支持事务的情况可以采用TCC,就是完全自定义prepare/commit/rollback行为
扩展阅读:https://seata.io/zh-cn/docs/dev/mode/tcc-mode.html
系统推荐
- Git笔记
- getPath vs getAbsolutePath vs getCanonicalPath
- JVM参数设置
- Spring Cloud(一):服务治理技术概览【Finchley 版】
- HTTP1 0 vs HTTP1 1 vs WebSocket
- 测试两台服务器间的网速
- Thread & ExecutorService & ThreadPoolExecutor 总览
- 多台centos服务器,文件互相备份
- CountDownLatch源码解读
- Lombok的Accessors导致EasyExcel读取失败
- Hbase 总览
- PostgreSQL高可用
- 随机毒鸡汤:每天简单生活,一切从简,始终单调。