理论说明:
1 数据库的2阶段提交协议(2PC或者称为XA Transactions):
第一阶段:事务协调器要求涉及事务的数据库都预提交,并反馈是否可以提交
第二阶段:事务协调器要求每个数据库提交/回滚数据
2 BASE理论(对CAP进一步补充):
- Basically Available(基本可用)
- Soft state(软状态)
- Eventually consistent(最终一致性)
3 XA :XA 是指由 X/Open 组织提出的分布式事务处理的规范. XA 规范主要定义了事务管理器(Transaction Manager)和局部资源管理器(Local Resource Manager)之间的接口
解决方案:
方案一:2阶段提交
方案二:3阶段提交
方案三:补偿事务(TCC)
方案四:本地消息表(业界使用较多)
方案五:MQ 事务消息
在我的博客里面,每一个方案都有一个特定的文章,欢迎大家阅读!