【GHS】微服务痛点-基于Dubbo + Seata的分布式事务

编程开发   © 文章版权由 admin 解释,禁止匿名转载

#楼主# 2020-12-30

分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。 对于Seata不太了解的朋友,可以看下我之前写的文章: - [微服务开发的最大痛点-分布式事务SEATA入门简介](https://www.cnblogs.com/sanshengshui/p/14150794.html) - [微服务痛点-基于Dubbo + Seata的分布式事务(AT模式)](https://www.cnblogs.com/sanshengshui/p/14169121.html) ## TCC模式 ### TCC模式怎么理解 ![](https://james-1258744956.cos.ap-shanghai.myqcloud.com/%E5%BE%AE%E6%9C%8D%E5%8A%A1%E7%97%9B%E7%82%B9-%E5%9F%BA%E4%BA%8EDubbo%20%2B%20Seata%E7%9A%84%E5%88%86%E5%B8%83%E5%BC%8F%E4%BA%8B%E5%8A%A1%28TCC%E6%A8%A1%E5%BC%8F%29/dubbo-tcc-1.jpeg) **TCC(Try-Confirm-Cancel)**实际上是服务化的两阶段提交协议,业务开发者需要实现这三个服务接口,第一阶段服务由业务代码编排来调用 Try 接口进行资源预留,所有参与者的 Try 接口都成功了,事务管理器会提交事务,并调用每个参与者的 Confirm 接口真正提交业务操作,否则调用每个参与者的Cancel接口回滚事务。 Seata 框架把每组 TCC 接口当做一个 Resource,称为 TCC Resource。这套 TCC 接口可以是 RPC,也以是服务内 JVM 调用。在业务启动时,Seata 框架会自动扫描识别到 TCC 接口的调用方和发布方。如果是 RPC 的话,就是 sofa:reference、sofa:service、dubbo:reference、dubbo:service 等。 扫描到 TCC 接口的调用方和发布方之后。如果是发布方,会在业务启动时向 TC 注册 TCC Resource,与 DataSource Resource .

成为第一个回答人

评论

登录后才可发表内容
  • 主题

    106

  • 帖子

    82

  • 关注者

    0

Copyright © 2019 凯特网.   Powered by HYBBS 2.3.4  

Runtime:2.3762s Mem:2057Kb