乐趣区

关于seata:Seatago-110-发布补齐-AT-模式支持

公布概览

Seata-go 1.1.0 版本补齐了 AT 模式下对 Multi Delete、Multi Update、Insert on Update 和 Select for Update 的反对。至此 Seata-go 的 AT 模式与 Seata AT 模式全面对齐。

此版本给出了在 Dubbo-go/Gin/gRPC 中应用 Seata-go TCC/AT 两种模式的示例。

示例链接:https://github.com/seata/seata-go-samples/tree/main/at

AT 模式:

AT 模式反对并集成了 Multi Delete SQL 语法
AT 模式反对并集成了 Multi Update SQL 语法
AT 模式反对并集成了 Insert on Update SQL 语法
AT 模式反对并集成了 Select for Update SQL 语法

配置文件:

欠缺了更多中央读取配置文件性能

版本的次要更新如下

Feature:

[#491] 反对查问全局事务锁
https://github.com/seata/seata-go/pull/491

[#482] 反对 AT 模式 Multi Delete SQL 执行器
https://github.com/seata/seata-go/pull/482

[#481] 反对 AT 模式 Multi Update SQL 执行器
https://github.com/seata/seata-go/pull/481

[#478] 反对 AT 模式 Select for Update SQL 执行器
https://github.com/seata/seata-go/pull/478

[#477] 反对 Undo Log 的 Json 序列化形式
https://github.com/seata/seata-go/pull/477

[#456] 反对 AT 模式 Insert on Update SQL 执行器
https://github.com/seata/seata-go/pull/456

[#444] 反对 BZip 压缩算法
https://github.com/seata/seata-go/pull/444

[#436] 反对读取 RM 相干的配置文件
https://github.com/seata/seata-go/pull/436

[#433] 反对 XA 连贯管理器
https://github.com/seata/seata-go/pull/433

[#430] 反对读取 Getty 相干的配置文件
https://github.com/seata/seata-go/pull/430

Bugfix:

[#509] 修复 AT 模式下执行 Insert on Update 时 Undo Log 的 SQLType 字段的问题
https://github.com/seata/seata-go/pull/509

[#495] 修复 Undo Log 的 SQLType 字段的问题
https://github.com/seata/seata-go/pull/495

[#487] 修复 AT 执行时呈现的问题
https://github.com/seata/seata-go/pull/487

[#472] 修复全局事务中上下文失落值问题
https://github.com/seata/seata-go/pull/472

[#461] 修复 Error_Code_test 中变量未定义导致的 CI 失败问题
https://github.com/seata/seata-go/pull/461

[#459] 修复 Error 日志反复打印问题
https://github.com/seata/seata-go/pull/459

[#452] 修复 AT 模式执行 Insert SQL 时 ID 增的报错问题
https://github.com/seata/seata-go/pull/452

Optimize:

Seata-go 的示例我的项目曾经全副迁徙到新的仓库:https://github.com/seata/seata-go-samples

[#507] 优化 AT 模式 Multiple Update SQL 执行器
https://github.com/seata/seata-go/pull/507

[#505] 优化 AT 模式 Multi SQL 执行器
https://github.com/seata/seata-go/pull/505

[#453] 优化 Message Type 和 Transaction error Code 枚举值
https://github.com/seata/seata-go/pull/453

[#447] 优化数据源初始化流程
https://github.com/seata/seata-go/pull/447

[#466] 优化变量的命名
https://github.com/seata/seata-go/pull/466

Test:

[#445] 增加 Transaction error Code 的单元测试
https://github.com/seata/seata-go/pull/445

Doc:

[#492] 更新 Readme 文件的已实现性能列表
https://github.com/seata/seata-go/pull/492

[#489] 增加 1.1.0 版本的 Change Log
https://github.com/seata/seata-go/pull/489

英文版:https://github.com/seata/seata-go/releases/tag/v1.1.0

致谢

非常感谢以下 Contributors 的代码奉献。若有无心脱漏,请报告。

@luky116
https://github.com/luky116

@georgehao
https://github.com/georgehao

@lxfeng1997
https://github.com/lxfeng1997
@106umao
https://github.com/106umao
@wang1309
https://github.com/wang1309
@iSuperCoder
https://github.com/iSuperCoder
@Charlie17Li
https://github.com/Charlie17Li
@Code-Fight
https://github.com/Code-Fight
@Kirhaku
https://github.com/Kirhaku

@Vaderkai
https://github.com/VaderKai

@springrain
https://github.com/springrain

@Shaozhou Hu
https://github.com/raspberry-hu

@finkyky
https://github.com/Finkyky

同时,咱们收到了社区反馈的很多有价值的 issue 和倡议,非常感谢大家。

将来瞻望

Seata 社区近期与不少国内 go 语言微服务框架以及 ORM 框架背地的开发社区达成单干,比方 GORM 框架,曾经集成到了 Sample 中,后续会将更多的 ORM 框架集成在 Seata-go-Samples 我的项目中。与 MOSN 社区的单干也在推动中,可实现真正的基于 Seata 的 Transaction Mesh。

Seata-go-samples 集成到 Seata-go GitHub Actions 的集成测试环境,目前曾经在进行中,用于测试每个 PR,保证系统的兼容性与稳定性。

预计在 4 月中旬公布的 Seata-go v1.2.0,将实现 XA 分布式事务模式。Seata-go 正在开发中的 Saga 模式,将在现有的 Seata Saga 模式之上实现肯定的冲破:实现基于工作流的微服务编排能力。

以后的 Saga 模式仅实现了服务编排的正向推动与反向 Rollback 能力,更进一步的服务编排则能够实现 DAG、定时工作、工作批量调度,笼罩工作流的所有流程,晋升用户在 Seata 这个平台上的应用体验。目前 Seata-go 依赖于 Seata Java 的 TC,依照这个工作打算,可能须要在将来的 Seata-go 版本中实现一个性能更弱小的 TC 调度。

Seata 多语言版本,目前倒退最快的就是 Seata-go,其次成熟度较高的是 Seata-php,目前倒退比拟快的还有 Seata-js,欢送对开源感兴趣的敌人退出 Seata 开源建设中来。

罕用链接

Seata:
http://github.com/seata/seata
https://github.com/seata/seata-php
https://github.com/seata/seata-js
https://github.com/seata/seata-go

Samples:
https://github.com/seata/seata-samples
https://github.com/seata/seata-go-samples

官网:
https://seata.io/

投稿

欢送大家将 Seata/Seata-go/Seata-php/Seata-js 相干的实际文章投稿至:https://www.yuque.com/fred-x/ngfgiz/le1h4u5kn0xyhhoh

Seata Star 一下
https://github.com/seata/seata-go

本周举荐浏览

Seata-go 公布 1.0.3,补齐 AT 模式

Seata-go 1.0 重磅发版

Seata 多语言体系建设

Seata AT 模式代码级详解

退出移动版