diff --git a/README.md b/README.md index b2211e1..60c2f56 100644 --- a/README.md +++ b/README.md @@ -12,7 +12,7 @@ DTM是首款golang的开源分布式事务管理器,优雅的解决了幂等 受邀参加中国数据库大会分享[多语言环境下分布式事务实践](http://dtcc.it168.com/yicheng.html#b9) -### 与其他框架对比 +## 与其他框架对比 目前开源的分布式事务框架,暂未看到非Java语言有成熟的框架。而Java语言的较多,有阿里的SEATA、华为的ServiceComb-Pack,京东的shardingsphere,以及himly,tcc-transaction,ByteTCC等等,其中以seata应用最为广泛。 @@ -32,34 +32,27 @@ DTM是首款golang的开源分布式事务管理器,优雅的解决了幂等 从上面对比的特性来看,如果您的语言栈包含了Java之外的语言,那么dtm是您的首选。如果您的语言栈是Java,您也可以选择接入dtm,使用子事务屏障技术,简化您的业务编写。 -### 文档与介绍(更新中) - * [分布式事务简介](https://zhuanlan.zhihu.com/p/387487859) - * 分布式事务模式 - - [XA事务模式](https://zhuanlan.zhihu.com/p/384756957) - - [SAGA事务模式](https://zhuanlan.zhihu.com/p/385594256) - - [TCC事务模式](https://zhuanlan.zhihu.com/p/388357329) - - 可靠消息事务模式 - * [子事务屏障](https://zhuanlan.zhihu.com/p/388444465) - * [通信协议](./doc/protocol.md) - * FAQ - * 部署指南 +## [各语言客户端及示例](./doc/sdk.md) + +## 快速开始 -# 快速开始 ### 安装 + `git clone https://github.com/yedf/dtm` + ### dtm依赖于mysql -配置mysql: +配置mysql: -`cp conf.sample.yml conf.yml # 修改conf.yml` +`cp conf.sample.yml conf.yml # 修改conf.yml` ### 启动并运行saga示例 `go run app/main.go saga` -# 开始使用 +## 开始使用 ### 使用 -``` go +``` GO // 具体业务微服务地址 const qsBusi = "http://localhost:8081/api/busi_saga" req := &gin.H{"amount": 30} // 微服务的载荷 @@ -75,36 +68,26 @@ DTM是首款golang的开源分布式事务管理器,优雅的解决了幂等 ### 完整示例 参考[examples/quick_start.go](./examples/quick_start.go) -### 交流群 -请加 yedf2008 好友或者扫码加好友,验证回复 dtm 按照指引进群 +## 文档与介绍(更新中) + * [分布式事务简介](https://zhuanlan.zhihu.com/p/387487859) + * 分布式事务模式 + - [XA事务模式](https://zhuanlan.zhihu.com/p/384756957) + - [SAGA事务模式](https://zhuanlan.zhihu.com/p/385594256) + - [TCC事务模式](https://zhuanlan.zhihu.com/p/388357329) + - 可靠消息事务模式 + * [子事务屏障](https://zhuanlan.zhihu.com/p/388444465) + * [通信协议](./doc/protocol.md) + * [FAQ](https://github.com/yedf/dtm/issues/1) + * 部署指南 + +## 交流群 +请加 yedf2008 好友或者扫码加好友,验证回复 dtm 按照指引进群  如果您觉得此项目不错,或者对您有帮助,请赏颗星吧! -### 其他语言客户端 - -#### python - -客户端sdk(当前只支持TCC): [https://github.com/yedf/dtmcli-py](https://github.com/yedf/dtmcli-py) - -示例: [https://github.com/yedf/dtmcli-py-sample](https://github.com/yedf/dtmcli-py-sample) - -#### php - -客户端sdk(当前只支持TCC): [https://github.com/yedf/dtmcli-php](https://github.com/yedf/dtmcli-php) - -示例: [https://github.com/yedf/dtmcli-php-sample](https://github.com/yedf/dtmcli-php-sample) - -感谢 [onlyshow](https://github.com/onlyshow) 的帮助,php的sdk和示例,全部由[onlyshow](https://github.com/onlyshow)独立完成 - -#### node - -客户端sdk(当前只支持TCC): [https://github.com/yedf/dtmcli-node](https://github.com/yedf/dtmcli-node) - -示例: [https://github.com/yedf/dtmcli-node-sample](https://github.com/yedf/dtmcli-node-sample) - -### 谁在使用 +## 谁在使用