美文网首页
63.分布式事务解决方案-TCC

63.分布式事务解决方案-TCC

作者: LANSHENGYANG | 来源:发表于2020-06-12 18:30 被阅读0次

TCC事务

  • TCC即Try Confirm Cancel,它属于补偿型分布式事务。TCC实现分布式事务一共有三个步骤:
  • Try:尝试执行的业务
    • 这个过程并未执行业务,只是完成所有业务的一致性检查,并预留好执行所需的全部资源
  • Confirm:确认执行业务
    • 确认执行的操作,不做任何业务检查,只使用Try阶段预留的业务资源。通常情况下,采用TCC则认为Confirm阶段是不会出错的。即:是要Try成功,Confirm一定成功。若Confirm阶段真的出错了,需引重试机制或人工处理。
  • Cancel:取消待执行的业务
    • 取消Try阶段预留的业务资源。通常情况下,采用TCC则认为Cancel阶段也是一定成功的。若Cancel阶段真的不错了,需引入重试机制或人工处理。


      image
TCC两阶段提交与XA两阶段提交的区别是:
  • XA是资源层面的分布式事务,强一致性,在两阶段提交的整个过程中,一直会持有资源的锁。
  • TCC是业务层面的分布式事务,最终一致性,不会一直持有资源的锁。
TCC事务的优缺点
  • 优点:把数据库层的二阶段提交上提到了应用层来使用,规避了数据库层的2PC性能低下的问题。
  • 缺点:TCC的Try,Confirm,Cancel操作功能需业务提供,开发成本高。

相关文章

网友评论

      本文标题:63.分布式事务解决方案-TCC

      本文链接:https://www.haomeiwen.com/subject/vtuntktx.html