diff --git a/README-cn.md b/README-cn.md index 66cd490..a339308 100644 --- a/README-cn.md +++ b/README-cn.md @@ -12,8 +12,6 @@ DTM是一款golang开发的分布式事务管理器,解决了跨数据库、 他优雅的解决了幂等、空补偿、悬挂等分布式事务难题,提供了简单易用、高性能、易水平扩展的解决方案。 -通俗一点说,DTM提供跨服务事务能力,一组服务要么全部成功,要么全部回滚,避免只更新了一部分数据产生的业务问题。 - ## 谁在使用DTM(仅列出部分) [Tencent 腾讯](https://dtm.pub/other/using.html#tencent) diff --git a/README.md b/README.md index 7d93642..a339308 100644 --- a/README.md +++ b/README.md @@ -12,8 +12,6 @@ DTM是一款golang开发的分布式事务管理器,解决了跨数据库、 他优雅的解决了幂等、空补偿、悬挂等分布式事务难题,提供了简单易用、高性能、易水平扩展的解决方案。 -通俗一点说,DTM提供跨服务事务能力,一组服务要么全部成功,要么全部回滚,避免只更新了一部分数据产生的业务问题。 - ## 谁在使用DTM(仅列出部分) [Tencent 腾讯](https://dtm.pub/other/using.html#tencent) @@ -107,7 +105,7 @@ go run main.go 上述saga分布式事务的时序图如下: - + ### 失败情况 在实际的业务中,子事务可能出现失败,例如转入的子账号被冻结导致转账失败。我们对业务代码进行修改,让TransIn的正向操作失败,然后看看结果 @@ -120,7 +118,7 @@ go run main.go 再运行这个例子,整个事务最终失败,时序图如下: - +![saga_rollback](https://pic3.zhimg.com/80/v2-8d8f1476be8a1e2e09ce97a89b4116c2_1440w.jpg) 在转入操作失败的情况下,TransIn和TransOut的补偿操作被执行,保证了最终的余额和转账前是一样的。