https://github.com/changmingxie/tcc-transaction

FROM https://support.hwclouds.com/devg-servicestage/zh-cn_topic_0056814426.html
TCC事务
为了解决在事务运行过程中大颗粒度资源锁定的问题,业界提出一种新的事务模型,它是基于业务层面的事务定义。锁粒度完全由业务自己控制。它本质是一种补偿的思路。它把事务运行过程分成 Try、Confirm / Cancel 两个阶段。在每个阶段的逻辑由业务代码控制。这样就事务的锁粒度可以完全自由控制。业务可以在牺牲隔离性的情况下,获取更高的性能。

  • Try 阶段
    • Try :尝试执行业务
      • 完成所有业务检查( 一致性 )
      • 预留必须业务资源( 准隔离性 )
  • Confirm / Cancel 阶段:
    • Confirm :确认执行业务
      • 真正执行业务
      • 不做任务业务检查
      • Confirm 操作满足幂等性
    • Cancel :取消执行业务
      • 释放 Try 阶段预留的业务资源
      • Cancel 操作满足幂等性
    • Confirm 与 Cancel 互斥

参考文章: 

TCC-Transaction 源码分析 —— TCC 实现 

https://blog.csdn.net/varyall/article/details/95002177

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐