您的位置:首页 > IT > 正文

生产环境可用的 Seata-go 1.2.0 发布_快播报

来源:OSCHINA     时间:2023-06-07 15:24:55

Seata-go 1.2.0 已正式发布。

Seata 是一个非常成熟的分布式事务框架,在 Java 领域是事实上的分布式事务技术标准平台。Seata-go 是 seata 多语言生态中的 Go 语言实现版本,实现了 Java 和 Go 之间的互通,让 Go 开发者也能使用 seata-go 来实现分布式事务。请访问Seata 官网查看快速开始和文档。

Seata-go 的原理和 Seata-java 保持一致,都是由 TM、RM 和 TC 组成,其中 TC 的功能复用 Java 的,TM 和 RM 功能后面会和 Seata-java 对齐。


(相关资料图)

发布概览

Seata-go 1.2.0 版本支持 XA 模式。XA 协议是由 X/Open 组织提出的分布式事务处理规范,其优点是对业务代码无侵入。当前 Seata-go 的 XA 模式支持 MySQL 数据库。至此,Seata-go 已经集齐 AT、TCC、Saga 和 XA 四种事务模式,完成了与 Seata Java 的功能对齐。

XA 模式的主要功能:

支持 XA 数据源代理 支持 XA 事务模式

XA 相关的 Samples 可以参考示例:

https://github.com/seata/seata-go-samples/tree/main/xa

在本版本中还修复了近期大量用户在使用过程中提交的 issue。

版本的主要更新如下

Feature:

[#467]实现 XA 模式支持 MySQL

https://github.com/seata/seata-go/pull/467

[#534] 支持 Session 的负载均衡

https://github.com/seata/seata-go/pull/534

Bugfix:

[#540] 修复初始化 XA 模式的 bug

https://github.com/seata/seata-go/pull/540

[#545] 修复 XA 模式获取 db 版本号的 bug

https://github.com/seata/seata-go/pull/545

[#548] 修复启动 XA 时候会失败的 bug

https://github.com/seata/seata-go/pull/548

[#556] 修复 XA 数据源的 bug

https://github.com/seata/seata-go/pull/556

[#562] 修复提交 XA 全局事务的 bug

https://github.com/seata/seata-go/pull/562

[#564] 修复提交 XA 分支事务的 bug

https://github.com/seata/seata-go/pull/564

[#566] 修复使用 XA 数据源执行本地事务的 bug

https://github.com/seata/seata-go/pull/566

Optimize:

[#523] 优化 CI 流程

https://github.com/seata/seata-go/pull/523

[#525] 将 Jackson 序列化重命名为 JSON

https://github.com/seata/seata-go/pull/525

[#532] 移除重复的代码

https://github.com/seata/seata-go/pull/532

[#536] 优化 go import 代码格式

https://github.com/seata/seata-go/pull/536

[#554] 优化 XA 模式的性能

_https://github.com/seata/seata-go/pull/_554

[#561] 优化 XA 模式的日志输出

https://github.com/seata/seata-go/pull/561

Test:

[#535] 添加集成测试

https://github.com/seata/seata-go/pull/535

Doc:

[#550] 添加 1.2.0 版本的改动日志

https://github.com/seata/seata-go/pull/550

详情查看 Release Notes。

相关文章