分布式事务相关算法:
角色:
- 协调者
- 参与者
XA模式、AT模式:
- XA模式:2PC,使用回滚
- AT模式:TCC,利用补偿
2PC :
准备阶段
:协调者
向所有参与者
发送准备请求,参与者执行预操作
并记录日志,但不提交
,进入准备阶段
。
提交阶段
:- 如果
所有参与者
都准备就绪
,协调者发送提交请求,参与者提交操作; - 否则,
协调者
发送回滚请求
,参与者回滚操作。
- 如果
- 存在的问题:
- 协调者单点故障问题
- 参与者等待指令期间阻塞
- 延迟问题
- 适用场景:
- 在某些需要强一致性的分布式事务管理系统
- MySQL、ZooKeeper
2025年6月17日...大约 3 分钟