@linwbai
2018-07-26T16:54:38.000000Z
字数 4903
阅读 950
事务自动补偿方案
yonyou
TCC
优点
- try阶段和confirm阶段相互独立不会相互影响
- cancel可以使用mq异步操作保证最终一致性
缺点
- 需要用户实现Try、Confirm、Cancel
- 执行update影响多行,cancel比较麻烦
- 执行insert时id自增,cancel无法处理
FMT
- 介绍
- 保存快照、执行sql、保存新快照
- 提交:删除快照
- 回滚:校验脏写、回滚数据、删除快照
- 优点
- 无需实现Try、Confirm、Cancel。Cancel阶段通过恢复快照完成
- 如果需要可以在快照数据上加锁,等待提交/回滚后
- 效率较高
- 缺点
lcn
- 介绍
- 重写了DataSource#close。事务提交关闭之后执行假关闭,等待事务协调器完成事务以后再关闭连接
XA
最终一致性