文|赵新(花名:于雨 )
蚂蚁集团 Seata 项目开源负责人
本文 3902 字 阅读 10 分钟
发布概览
Seata-go 1.0.3 版本补齐了 AT 模式下对 Insert/Delete 的支持,这意味着除了 “select for update” 外,Seata-go 的 AT 模式与 Seata AT 模式全面对齐。
此版本给出了在 Dubbo-go/Gin/gRPC 中使用 Seata-go TCC/AT 两种模式的示例。
示例链接:https://github.com/seata/seata-go/tree/master/sample/tcc 。
AT 模式
- AT 模式支持并集成了 Insert 语法解析;
- AT 模式支持并集成了 Delete 语法解析。
配置文件:
- 支持了读取配置文件功能。
版本的主要更新如下
Feature:
[#380] 支持 MySQL XA 的连接
https://github.com/seata/seata-go/pull/380
[#383] 支持 TCC Fence 读取配置文件
https://github.com/seata/seata-go/pull/383
[#389] 添加 XA 模式的事务 ID
https://github.com/seata/seata-go/pull/389
[#398] 支持 TM 读取配置文件
https://github.com/seata/seata-go/pull/398
[#399] 支持 getty 读取配置文件
https://github.com/seata/seata-go/pull/399
[#405] 支持 AT 模式 Insert on duplicate SQL 解析
https://github.com/seata/seata-go/pull/405
[#406] 支持 transport 读取配置文件
https://github.com/seata/seata-go/pull/406
[#410] 支持 Undo Log 读取配置文件
https://github.com/seata/seata-go/pull/410
[#411] 在项目中使用 TM 的配置文件属性
https://github.com/seata/seata-go/pull/411
[#412] 支持 RM 读取配置文件
https://github.com/seata/seata-go/pull/412
[#413] 支持 Service 读取配置文件
https://github.com/seata/seata-go/pull/413
[#419] 在项目中使用 Undo Log 的配置文件属性
https://github.com/seata/seata-go/pull/419
[#421] 支持 Service 读取配置文件
https://github.com/seata/seata-go/pull/421
Bugfix:
[#387] 修复 OpenConnector 中死循环的问题
https://github.com/seata/seata-go/pull/387
[#401] 优化注册事务分支的流程
https://github.com/seata/seata-go/pull/401
[#418] 修复 Undo Log 的配置文件的问题
https://github.com/seata/seata-go/pull/418
[#423] [#424]修复 getty 初始化失败的问题
https://github.com/seata/seata-go/pull/423
https://github.com/seata/seata-go/pull/423
[#429] 修复 AT 模式执行失败的问题
https://github.com/seata/seata-go/pull/429
Optimize:
[#366] AT 回滚前添加数据校验逻辑
https://github.com/seata/seata-go/pull/366
[#367] 优化 AT 代码的命名
https://github.com/seata/seata-go/pull/367
[#369] 移除不用的方法
https://github.com/seata/seata-go/pull/369
[#385] 优化 AT sample 的建表SQL
https://github.com/seata/seata-go/pull/385
[#388] 优化代码注释,删除不用的代码
https://github.com/seata/seata-go/pull/388
[#390] 优化 RM 的初始化流程
https://github.com/seata/seata-go/pull/390
[#392] 优化代码的风格问题
https://github.com/seata/seata-go/pull/392
[#394] 重构 AT 模式的执行器
https://github.com/seata/seata-go/pull/394
[#400] 优化 Protocol 的初始化流程
https://github.com/seata/seata-go/pull/400
[#408] 优化 Log 的初始化流程
https://github.com/seata/seata-go/pull/408
[#409] 重构 AT 模式的 Delete 和 Insert SQL 的执行逻辑
https://github.com/seata/seata-go/pull/409
[#414] 重命名单测文件
https://github.com/seata/seata-go/pull/414
[#422] 移除未使用的 config 代码
https://github.com/seata/seata-go/pull/422
Doc:
[#417] 调整 ReadMe 文件内容
https://github.com/seata/seata-go/pull/417
英文版:https://github.com/seata/seata-go/releases/tag/v1.0.2-rc3 。
致谢
非常感谢以下 Contributors 的代码贡献。若有无意遗漏,请报告。
@AlexStocks:
https://github.com/AlexStocks
@luky116:
https://github.com/luky116
@georgehao:
https://github.com/georgehao
@lxfeng1997:
https://github.com/lxfeng1997
@106umao:
https://github.com/106umao
@liiibpm:
https://github.com/liiibpm
@wang1309:
https://github.com/wang1309
@iSuperCoder:
https://github.com/iSuperCoder
@jasondeng1997:
https://github.com/jasondeng1997
@Charlie17Li:
https://github.com/Charlie17Li
@Code-Fight:
https://github.com/Code-Fight
@Kirhaku:
https://github.com/Kirhaku
@wang1309:
https://github.com/wang1309
同时,我们收到了社区反馈的很多有价值的 issue 和建议,非常感谢大家。
社区讨论群
扫扫加入钉钉群:
Seata-go 社区群:33069364
Seata-go 开发群:44816898
未来展望
从下个版本( v1.0.4 )开始,Seata-go 所有这些示例将全部迁移到:https://github.com/seata/seata-go-samples。
Seata 社区近期与不少国内 Go 语言微服务框架以及 ORM 框架背后的开发社区达成合作,我们将在他们集成 Seata-go 后给出更多使用示例。
除了给出与更多微服务框架的集成示例外,我们也将根据 Seata 的使用场景,给出更多诸如商品交易从下订单到商品出货仓等诸多场景的使用示例,也欢迎更多业界同行参与建设 Seata-go-samples。后期我们将会把 Seata-go-samples 集成到 Seata-go GitHub Actions 的集成测试环境,用于测试每个 PR,保证系统的兼容性与稳定性。
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 相关的实践文章投稿至:alexstocks@foxmai.com。
Seata Star 一下✨:
https://github.com/seata/seata-go
本周推荐阅读
Seata AT 模式代码级详解
Seata-go 1.0 重磅发版
Seata 多语言体系建设
Seata-php 半年规划