Skip to content

Releases: dtm-php/dtm-client

Release v0.3.5

11 Jul 02:04
caeca3a
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.3.4...v0.3.5

Release v0.3.4

02 Apr 07:36
1b60067
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.3.3...v0.3.4

Release v0.3.3

22 Dec 04:17
fa21a9d
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.3.2...v0.3.3

🎉 Release v0.3.2

23 Oct 15:26
f5820bc
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.3.1...v0.3.2

🎉 Release v0.3.1

16 Oct 16:25
ddcb4d8
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.3.0...v0.3.1

🎉 Release v0.3.0

12 Oct 16:12
e33991d
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.2.3...v0.3.0

🎉 Release v0.2.3

18 Aug 13:39
a7e4390
Compare
Choose a tag to compare

介绍

dtm/dtm-client 是分布式事务管理器 DTM 的 PHP 客户端,已支持 TCC模式、Saga、二阶段消息模式的分布式事务模式,并分别实现了与 DTM Server 以 HTTP 协议或 gRPC 协议通讯,该客户端可安全运行于 PHP-FPM 和 Swoole 协程环境中,更是对 Hyperf 做了更加易用的功能支持。

关于 DTM

DTM 是一款基于 Go 语言实现的开源分布式事务管理器,提供跨语言,跨存储引擎组合事务的强大功能。DTM 优雅的解决了幂等、空补偿、悬挂等分布式事务难题,也提供了简单易用、高性能、易水平扩展的分布式事务解决方案。

亮点

  • 极易上手
    • 零配置启动服务,提供非常简单的 HTTP 接口,极大降低上手分布式事务的难度
  • 跨语言
    • 可适合多语言栈的公司使用。方便 Go、Python、PHP、NodeJs、Ruby、C# 等各类语言使用。
  • 使用简单
    • 开发者不再担心悬挂、空补偿、幂等各类问题,首创子事务屏障技术代为处理
  • 易部署、易扩展
    • 仅依赖 MySQL/Redis,部署简单,易集群化,易水平扩展
  • 多种分布式事务协议支持
    • TCC、SAGA、XA、二阶段消息,一站式解决多种分布式事务问题

对比

在非 Java 语言下,暂未看到除 DTM 之外的成熟的分布式事务管理器,因此这里将 DTM 和 Java 中最成熟的开源项目 Seata 做对比:

特性 DTM SEATA 备注
支持语言 Go、C#、Java、Python、PHP... Java DTM 可轻松接入一门新语言
存储引擎 支持数据库、Redis、Mongo等 数据库
异常处理 子事务屏障自动处理 手动处理 DTM 解决了幂等、悬挂、空补偿
SAGA事务 极简易用 复杂状态机
二阶段消息 最简消息最终一致性架构
TCC事务
XA事务
AT事务 建议使用XA AT 与 XA类似,但有脏回滚
单服务多数据源
通信协议 HTTP、gRPC Dubbo等协议 DTM对云原生更加友好
star数量 github stars github stars DTM 从 2021-06-04 发布 0.1版本,发展飞快

从上面对比的特性来看,DTM 在许多方面都具备很大的优势。如果考虑多语言支持、多存储引擎支持,那么 DTM 毫无疑问是您的首选.

更新功能

🎉 Release v0.2.2

16 Aug 17:07
2e4b36a
Compare
Choose a tag to compare

介绍

dtm/dtm-client 是分布式事务管理器 DTM 的 PHP 客户端,已支持 TCC模式、Saga、二阶段消息模式的分布式事务模式,并分别实现了与 DTM Server 以 HTTP 协议或 gRPC 协议通讯,该客户端可安全运行于 PHP-FPM 和 Swoole 协程环境中,更是对 Hyperf 做了更加易用的功能支持。

关于 DTM

DTM 是一款基于 Go 语言实现的开源分布式事务管理器,提供跨语言,跨存储引擎组合事务的强大功能。DTM 优雅的解决了幂等、空补偿、悬挂等分布式事务难题,也提供了简单易用、高性能、易水平扩展的分布式事务解决方案。

亮点

  • 极易上手
    • 零配置启动服务,提供非常简单的 HTTP 接口,极大降低上手分布式事务的难度
  • 跨语言
    • 可适合多语言栈的公司使用。方便 Go、Python、PHP、NodeJs、Ruby、C# 等各类语言使用。
  • 使用简单
    • 开发者不再担心悬挂、空补偿、幂等各类问题,首创子事务屏障技术代为处理
  • 易部署、易扩展
    • 仅依赖 MySQL/Redis,部署简单,易集群化,易水平扩展
  • 多种分布式事务协议支持
    • TCC、SAGA、XA、二阶段消息,一站式解决多种分布式事务问题

对比

在非 Java 语言下,暂未看到除 DTM 之外的成熟的分布式事务管理器,因此这里将 DTM 和 Java 中最成熟的开源项目 Seata 做对比:

特性 DTM SEATA 备注
支持语言 Go、C#、Java、Python、PHP... Java DTM 可轻松接入一门新语言
存储引擎 支持数据库、Redis、Mongo等 数据库
异常处理 子事务屏障自动处理 手动处理 DTM 解决了幂等、悬挂、空补偿
SAGA事务 极简易用 复杂状态机
二阶段消息 最简消息最终一致性架构
TCC事务
XA事务
AT事务 建议使用XA AT 与 XA类似,但有脏回滚
单服务多数据源
通信协议 HTTP、gRPC Dubbo等协议 DTM对云原生更加友好
star数量 github stars github stars DTM 从 2021-06-04 发布 0.1版本,发展飞快

从上面对比的特性来看,DTM 在许多方面都具备很大的优势。如果考虑多语言支持、多存储引擎支持,那么 DTM 毫无疑问是您的首选.

更新功能

🎉 Release v0.2.1

15 Jun 05:46
b351211
Compare
Choose a tag to compare

介绍

dtm/dtm-client 是分布式事务管理器 DTM 的 PHP 客户端,已支持 TCC模式、Saga、二阶段消息模式的分布式事务模式,并分别实现了与 DTM Server 以 HTTP 协议或 gRPC 协议通讯,该客户端可安全运行于 PHP-FPM 和 Swoole 协程环境中,更是对 Hyperf 做了更加易用的功能支持。

关于 DTM

DTM 是一款基于 Go 语言实现的开源分布式事务管理器,提供跨语言,跨存储引擎组合事务的强大功能。DTM 优雅的解决了幂等、空补偿、悬挂等分布式事务难题,也提供了简单易用、高性能、易水平扩展的分布式事务解决方案。

亮点

  • 极易上手
    • 零配置启动服务,提供非常简单的 HTTP 接口,极大降低上手分布式事务的难度
  • 跨语言
    • 可适合多语言栈的公司使用。方便 Go、Python、PHP、NodeJs、Ruby、C# 等各类语言使用。
  • 使用简单
    • 开发者不再担心悬挂、空补偿、幂等各类问题,首创子事务屏障技术代为处理
  • 易部署、易扩展
    • 仅依赖 MySQL/Redis,部署简单,易集群化,易水平扩展
  • 多种分布式事务协议支持
    • TCC、SAGA、XA、二阶段消息,一站式解决多种分布式事务问题

对比

在非 Java 语言下,暂未看到除 DTM 之外的成熟的分布式事务管理器,因此这里将 DTM 和 Java 中最成熟的开源项目 Seata 做对比:

特性 DTM SEATA 备注
支持语言 Go、C#、Java、Python、PHP... Java DTM 可轻松接入一门新语言
存储引擎 支持数据库、Redis、Mongo等 数据库
异常处理 子事务屏障自动处理 手动处理 DTM 解决了幂等、悬挂、空补偿
SAGA事务 极简易用 复杂状态机
二阶段消息 最简消息最终一致性架构
TCC事务
XA事务
AT事务 建议使用XA AT 与 XA类似,但有脏回滚
单服务多数据源
通信协议 HTTP、gRPC Dubbo等协议 DTM对云原生更加友好
star数量 github stars github stars DTM 从 2021-06-04 发布 0.1版本,发展飞快

从上面对比的特性来看,DTM 在许多方面都具备很大的优势。如果考虑多语言支持、多存储引擎支持,那么 DTM 毫无疑问是您的首选.

更新功能

🎉 Release v0.2.0

23 May 01:47
afdf2bf
Compare
Choose a tag to compare

介绍

dtm/dtm-client 是分布式事务管理器 DTM 的 PHP 客户端,已支持 TCC模式、Saga、二阶段消息模式的分布式事务模式,并分别实现了与 DTM Server 以 HTTP 协议或 gRPC 协议通讯,该客户端可安全运行于 PHP-FPM 和 Swoole 协程环境中,更是对 Hyperf 做了更加易用的功能支持。

关于 DTM

DTM 是一款基于 Go 语言实现的开源分布式事务管理器,提供跨语言,跨存储引擎组合事务的强大功能。DTM 优雅的解决了幂等、空补偿、悬挂等分布式事务难题,也提供了简单易用、高性能、易水平扩展的分布式事务解决方案。

亮点

  • 极易上手
    • 零配置启动服务,提供非常简单的 HTTP 接口,极大降低上手分布式事务的难度
  • 跨语言
    • 可适合多语言栈的公司使用。方便 Go、Python、PHP、NodeJs、Ruby、C# 等各类语言使用。
  • 使用简单
    • 开发者不再担心悬挂、空补偿、幂等各类问题,首创子事务屏障技术代为处理
  • 易部署、易扩展
    • 仅依赖 MySQL/Redis,部署简单,易集群化,易水平扩展
  • 多种分布式事务协议支持
    • TCC、SAGA、XA、二阶段消息,一站式解决多种分布式事务问题

对比

在非 Java 语言下,暂未看到除 DTM 之外的成熟的分布式事务管理器,因此这里将 DTM 和 Java 中最成熟的开源项目 Seata 做对比:

特性 DTM SEATA 备注
支持语言 Go、C#、Java、Python、PHP... Java DTM 可轻松接入一门新语言
存储引擎 支持数据库、Redis、Mongo等 数据库
异常处理 子事务屏障自动处理 手动处理 DTM 解决了幂等、悬挂、空补偿
SAGA事务 极简易用 复杂状态机
二阶段消息 最简消息最终一致性架构
TCC事务
XA事务
AT事务 建议使用XA AT 与 XA类似,但有脏回滚
单服务多数据源
通信协议 HTTP、gRPC Dubbo等协议 DTM对云原生更加友好
star数量 github stars github stars DTM 从 2021-06-04 发布 0.1版本,发展飞快

从上面对比的特性来看,DTM 在许多方面都具备很大的优势。如果考虑多语言支持、多存储引擎支持,那么 DTM 毫无疑问是您的首选.

更新功能

  • 修复tcc 创建的每个子事务的branch_id都为 “01”,导致无法使用子事务屏障 #20
  • 修复 transRequestBranch query 为二维数组的问题 #23
  • 修复doAndSubmitabort 没有传参的问题 #21