乐趣区

关于golang:分布式事务管理器dtm091发布-新增python-node支持线上部署支持

更新日志

  • 增加环境变量反对、部署反对,文档增加部署反对
  • dtmcli 与 gin、logrus 齐全解耦,并且反对拆分到独自的仓库
  • 增加事务期待后果模式
  • 增加默认 DB_DRIVER 为 mysql

DTM 是首款 golang 的开源分布式事务管理器,优雅的解决了幂等、空弥补、悬挂等分布式事务难题。提供了简略易用、高性能、易程度扩大的分布式事务解决方案。

受邀加入中国数据库大会分享多语言环境下分布式事务实际

谁在应用 dtm

Ivydad 常青藤爸爸

Eglass 视咖镜小二

亮点

  • 极易接入

    • 反对 HTTP,提供非常简单的接口,极大升高上手分布式事务的难度,老手也能疾速接入
  • 应用简略

    • 开发者不再放心悬挂、空弥补、幂等各类问题,框架层代为解决
  • 跨语言

    • 可适宜多语言栈的公司应用。不便 go、python、php、nodejs、ruby、c# 各类语言应用。
  • 易部署、易扩大

    • 仅依赖 mysql,部署简略,易集群化,易程度扩大
  • 多种分布式事务协定反对

    • TCC、SAGA、XA、事务音讯

与其余框架比照

目前开源的分布式事务框架,暂未看到非 Java 语言有成熟的框架。而 Java 语言的较多,有阿里的 SEATA、华为的 ServiceComb-Pack,京东的 shardingsphere,以及 himly,tcc-transaction,ByteTCC 等等,其中以 seata 利用最为宽泛。

上面是 dtm 和 seata 的次要个性比照:

个性 DTM SEATA 备注
反对语言 Go、Java、python、php、c#… Java dtm 可轻松接入一门新语言
异样解决 子事务屏障主动解决 手动解决 dtm 解决了幂等、悬挂、空弥补
TCC 事务
XA 事务
AT 事务 AT 与 XA 相似,性能更好,但有脏回滚
SAGA 事务 简略模式 状态机简单模式 dtm 的状态机模式在布局中
事务音讯 dtm 提供相似 rocketmq 的事务音讯
通信协议 HTTP、GRPC dubbo 等协定,无 HTTP dtm 对云原生更加敌对

从下面比照的个性来看,如果您的语言栈蕴含了 Java 之外的语言,那么 dtm 是您的首选。如果您的语言栈是 Java,您也能够抉择接入 dtm,应用子事务屏障技术,简化您的业务编写。

如果您感觉 https://github.com/yedf/dtm 不错,或者对您有帮忙,请赏颗星吧!

退出移动版