当前位置:网站首页>快速搞懂Seata分布式事务AT、TCC、SAGA、XA模式选型
快速搞懂Seata分布式事务AT、TCC、SAGA、XA模式选型
2022-08-02 14:57:00 【InfoQ】
- 分布式事务
- Seata是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata将为用户提供了AT、TCC、SAGA和XA事务模式,为用户打造一站式的分布式解决方案。
AT模式
实现原理
insert into 订单 values(1001,...)
update 仓储 set num = 300 where gid =100;
DELETE FROM 订单 where id =1001
update 仓储 set num=210 where gid = 100
特点
- 所有服务与数据库必须要自己拥有管理权,因为要创建UNDO LOG表
- 最好都是MySQL,听说也支持PSQL,不过没试验过
- 高并发互联网应用,允许数据出现短时不一致,可通过对账程序或补录来保证最终一致性。
TCC模式
实现原理
特点
- 所有服务与数据库必须要自己拥有管理权
- 支持异构数据库,可以使用不同选型实现
- 高并发互联网应用,允许数据出现短时不一致,可通过对账程序或补录来保证最终一致性。
SAGA模式
实现原理
特点
- 在当前架构引入状态机机制,类似于工作流
- 无法保证隔离性
- 需要与第三方交互时才会考虑,例如:调用支付宝支付接口->出库失败->调用支付宝退款接口
XA模式
实现原理
特点
- 使用支持XA方案的关系型数据库(主流都支持)
- 金融行业,并发量不大,但数据很重要的项目
总结
边栏推荐
- 虚拟现实处理器(SXR2130P)ISO7640FMDW(数字隔离器)说明
- OneFlow源码解析:Op、Kernel与解释器
- 数组的应用实例—三子棋
- 面试必问的HashCode技术内幕
- 23.支持向量机的使用
- 【 Leetcode string, the string transform/hexadecimal conversion 】 HJ1. The length of the string last word HJ2. Calculation of a certain number of characters appear HJ30. String merging processing
- mysql 递归函数with recursive的用法
- MySQL----多表查询
- 多线程------实际篇
- 暴力破解美团最新JVM面试题:无限执行
猜你喜欢
Basic management of mysql database in Linux system
Vest bag access process record
数组的应用实例—三子棋
go——协程调度
5000mAh大电池!华为全新鸿蒙手机今晚亮相:更流畅更安全
2022 Security Officer-A Certificate Exam Questions and Mock Exam
BSC链智能合约模式系统开发功能逻辑分析
祝蔡徐坤生日快乐!
如何查看微信小程序服务器域名并且修改
UnicodeEncodeError: 'gbk' codec can't encode character '\u2022' in position 178: illegal multibyte s
随机推荐
2022 Security Officer-A Certificate Exam Questions and Mock Exam
Qt | 设置部件大小 sizeHint、minimumSizeHint、sizePolicy、stretch factor
Eight big software attack overview of supply chain
IPtables 和binlog
华为研究院19级研究员几年心得,终成趣谈网络协议文档,附大牛讲解
vim的高级用法配置
统计二进制中1的个数,两个int(32位)整数m和n的二进制表达中,有多少个位(bit)不同?
Apache APISIX 2.15 版本发布,为插件增加更多灵活性
MySQL----多表查询
2022 VMware下载安装教程
UnicodeEncodeError: 'gbk' codec can't encode character '\u2022' in position 178: illegal multibyte s
程序员开发效率神器汇总!
H5中的拖放(Drag 和 Drop)
PAT甲级 1145 哈希 - 平均查找时间
【 Leetcode string, the string transform/hexadecimal conversion 】 HJ1. The length of the string last word HJ2. Calculation of a certain number of characters appear HJ30. String merging processing
树状DP(记忆化搜索)PAT甲级 1079 1090 1106
PAT serie a 1137 final grades
How to check the WeChat applet server domain name and modify it
【无标题】
太香了!阿里Redis速成笔记,从头到尾全是精华!