生产环境可用的 Seata-go 1.2.0 来啦!!!

Seata学习 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit)。在关系数据库中,一个事务由一组SQL语句组成。事务应该具有4个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为ACID特性。原子性(atomicity):个事务是一个不可分割的工作单位,事务中包括的诸操作要么都做,要么 都不做。一致性(consistency):事务必须是使数据库从一个一致性状态变到另一个一致性状态,事务 的中间状态不能被观察到的。隔离性(isolation) 阅读详情

5f79b58b2c206b850b5470ac6e713a14.gif

文|刘月财(GitHub ID:luky116)

360 服务端开发专家

Seata-go 项目负责人

本文 2752 字 阅读 7 分钟

发布概览

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

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

致谢

非常感谢以下 Contributors 的代码贡献。若有无意遗漏,请报告。

@georgehao

https://github.com/georgehao

@luky116

https://github.com/luky116

@jasondeng1997

https://github.com/jasondeng1997

@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

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

社区讨论群

扫码加入钉钉群:

Seata-go 社区群:33069364

9852ec533355502ba59c6fcebb0471b5.png

Seata-go 开发群:44816898

793aa44e7c5368d874b7e9a8f506a50d.png

未来展望

Seata 社区近期与不少国内 Go 语言微服务框架以及 ORM 框架背后的开发社区达成合作,比如 GORM 框架,已经集成到了 Sample 中,后续会将更多的 ORM 框架集成在 Seata-go-samples 项目中。

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

Seata-go 后续的 Saga 模式,计划采用 Temporal 框架来做服务编排,目前正在规划中,期待能给用户带来更实用便利的 Saga 使用体验。

欢迎对开源感兴趣的朋友加入 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

  本周推荐阅读  

‍2181de2228a126caa476d81fbe8e648b.jpeg‍

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

Seata-go 1.1.0 发布,补齐 AT 模式支持

8f9726664b024dcdc6aad17c53622c36.png

Seata-go 发布 1.0.3 补齐 AT 模式

1eaec626db7131b9bfd2594c93f48d0c.png

Seata-go 1.0 重磅发版

24f58fe076873d15725b086e44cd0492.png

Seata AT 模式代码级详解

fcaabde5ddd81d5f4715cc5c4527bd6c.jpeg

SEATA AT模式:零侵入的分布式事务解决方案 分布式事务是微服务架构中的关键技术挑战,用于解决跨服务数据一致性问题。其核心原理基于两阶段提交协议,通过事务协调者管理各参与者的提交或回滚。SEATA框架的AT模式创新性地采用业务表记录undo_log的方式,实现了对业务代码零侵入的分布式事务管理,只需添加@GlobalTransactional注解即可自动处理事务。这种方案特别适合电商、金融等需要保证数据最终一致性的场景,相比TCC模式具有更低的使用门槛。在实际应用中,AT模式通过异步化处理和undo_log机制,既能避免传统2PC的同步阻塞问题,又能确 阅读详情

相关推荐

Seata AT模式生产级使用示例搭建及注意事项 | Spring Cloud 53

我们对`Seata`及其`AT`事务模式有了基础的了解,今天我们通过搭建`Spring Boot`集成`Seata`示例,加深对`AT`事务模式的掌握,避免在后续实战业务中出现脏写及脏读。

gmHappy 1万+

Seata简介(附带与其他分布式事务解决方案对比)

目录 Seata简介 分布式事务产生背景 数据库的水平分割 分布式事务理论基础 两阶段提交(2pc) TCC 事务消息 Seata解决方案 AT模式(业务侵入小) TCC(高性能) Seata简介 Seata(Simple Extensible Autonomous Transaction Architecture) 是 阿里巴巴开源的分布式事务中间件,以高效并且对业务 0 侵入的方式,解决微服务场景下面临的分布式事务问题。 附上项目github链接 http...

a754315344的博客 2568

Golang Seata 分布式事务方案详解

Seata-Golang是基于Seata分布式事务框架的Golang实现,支持AT、TCC等事务模式。文章详细介绍了在Golang项目中集成Seata的方案:包括环境配置(安装、YAML文件设置)、AT模式实现(全局事务管理)、TCC模式开发(Try-Confirm-Cancel流程)、与GORM的集成方法,以及生产环境部署建议(高可用配置、性能调优)。同时提供了常见问题解决方案,帮助开发者构建可靠的分布式事务系统。该方案适用于微服务架构下的复杂业务场景。

九班长的博客 396

seata 1.5.2(当前最新版)生产环境安装部署

seata 1.5.2(当前最新版)生产环境安装部署

一粒小粟 1411

MinIO vs 华为云OBS:成本、性能与兼容性深度对比(含实测数据)

本文深度对比了开源对象存储MinIO与华为云OBS在成本、性能、兼容性及运维方面的核心差异。通过实测数据与全生命周期成本分析,为技术决策者提供选型依据。文章指出,MinIO在长期成本控制、性能深度优化及S3 API兼容性方面优势显著,而华为云OBS则提供开箱即用的便利性。

kmeans3miner的博客 593

手把手教你用NetToPLCsim搭建西门子S7-1200仿真环境(附避坑指南)

本文详细指导如何利用NetToPLCsim与PLCSIM搭建西门子S7-1200仿真环境,实现无硬件条件下的PLC程序测试与上位机通信开发。内容涵盖软件选型、环境部署、关键参数配置及通信测试,并重点提供了连接失败、数据读写错误等常见问题的深度避坑指南,帮助工程师高效构建可靠的虚拟调试工作流。

a3b4c5的博客 614

seata-golang 一周年回顾

作者 | 刘晓敏 来源 | 阿里巴巴云原生公众号 Seata 是一款简单易用,高性能、开源的一站式分布式事务解决方案。Seata 从2019 年 1 月开源后就受到了大家的追捧,目前已经有几百家企业在生产环境进行了技术的落地。 2020 年 4 月,我们开始基于 Seata 着手做多语言 golang 项目,经过一年时间的开发,很高兴 seata-golang 发布了 1.0.0 版本。 今年 4 月 17 号,有幸在成都 gopher meetup 上将 seata-golang 介绍给热衷于 golan

阿里巴巴云原生的博客 394

RK3568平台(camera篇) MPP编码

同芯片的差异,为使用者提供统一的视频媒体处理接口(Media Process Interface,缩写 MPI)。瑞芯微提供的媒体处理软件平台(Media Process Platform,简称 MPP)是适用于瑞芯微芯片系列的。mpi_enc_test 的命令参数中,图像宽度(w)图像高度(h),码流类型(t)为强制要求参数,其他参。视频拷贝,缩放,色彩空间转换,场视频解交织(Deinterlace)数如输入文件(i),输出文件(o),编码帧数(n)等为可选参数。设置一些MPP的模式。

weixin_49303682的博客 7379

SpringBoot2.7实战:如何正确搭配SpringCloud、RabbitMQ和Seata版本(避坑指南)

本文详细介绍了SpringBoot 2.7与SpringCloud、RabbitMQ和Seata的版本兼容性实战指南,提供了经过生产验证的解决方案和最佳实践。通过官方文档、依赖传递分析和生产环境验证,帮助开发者避免版本冲突问题,确保微服务架构的稳定运行。

weixin_30892037的博客 582

筑基篇第9节:CUDA内存管理API进阶

CUDA多维内存管理与零拷贝技术 本文介绍了CUDA中高效处理多维数据的内存管理技术。对于二维数据,使用cudaMallocPitch可确保内存对齐访问,提升75%的带宽利用率;三维数据则通过cudaMalloc3D实现切片对齐。配套的cudaMemcpy2D/3D函数能高效处理数据拷贝。此外,零拷贝内存技术允许内核直接访问主机内存,避免显存拷贝开销。这些技术对图像处理、科学计算等应用至关重要,能显著提升多维数据处理的性能。

PeterPan的博客 82

拆开它的“身体”,看懂割草机器人的五层系统架构

这篇文章深入解析了智能割草机器人的五层系统架构。机械层采用铝合金一体式车架和独立悬挂刀盘系统;电子层配备双处理器和多种传感器;固件层实现毫秒级安全响应;算法层融合多种定位技术实现厘米级精度;云服务层提供远程管理和AI优化。这套系统通过精密协同实现了智能割草的全流程闭环,展现了从机械结构到云端智能的完整技术栈,为户外智能设备设立了新的技术标杆。

智能硬件研发,欢迎交流 198

Seata分布式事务部署与多语言集成实战指南

分布式事务是微服务架构中的关键技术,用于保证跨服务的数据一致性。Seata作为开源的分布式事务解决方案,采用AT、TCC等模式实现事务协调。其核心原理是通过TC(Transaction Coordinator)协调RM(Resource Manager)完成二阶段提交。在生产环境中,Seata的高可用部署需要结合Nacos注册中心和MySQL集群,同时要注意JDK版本兼容性问题。对于Java生态,需正确配置tx-service-group等参数;非Java服务可通过HTTP API接入,但需处理事务悬挂问题

weixin_33713350的博客 318

【Qt】解决 FTH: (11284): *** Fault tolerant heap shim applied to current process. (亲测有效)

计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\AppCompatFlags\Layers。容错堆垫片应用到当前的过程。这通常是由于以前的崩溃。win + r,输入regedit。

Fanjufei的博客 830

Seata-php 半年规划

文|赵新(花名:于雨)蚂蚁集团 Seata 项目开源负责人开放原子开源基金会代码贡献之星郭成(花名:星北)Seata-php 项目共同发起人蚂蚁集团技术专家刘岳健Seata-php 项目共同发起人、Hyperf 开发组成员广东快客电子商务有限公司高级后端工程师本文5894字 阅读12分钟|导语|通俗地讲,seata-php 是 Seata 的 PHP 语言实现,它实现了 Java 和...

金融级分布式架构 344

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Seata分布式事务:原理、实践与优化指南

分布式事务是微服务架构中确保数据一致性的关键技术,其核心挑战在于跨服务的原子性操作。通过两阶段提交、补偿机制等原理,分布式事务解决方案如Seata实现了最终一致性。Seata作为阿里开源框架,提供AT、TCC、SAGA等多种模式,适用于电商、金融等业务场景。在云原生环境下,Seata 1.5版本增强了对Kubernetes和gRPC的支持,显著提升了在分布式系统中的可用性和性能。本文通过核心架构解析和SpringCloud集成实战,帮助开发者掌握分布式事务的最佳实践。

weixin_30776545的博客 413

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

最致命的5个Seata分布式事务误区,90%开发者都踩过!

你是否还在为分布式事务中的数据不一致问题头疼?明明用了Seata却依然出现库存超卖、订单状态异常?本文将揭秘5个最容易被忽视的Seata使用陷阱,读完你将学会:如何正确选择事务模式、避免性能灾难、解决跨服务数据一致性难题,以及在生产环境中稳定运行Seata的3个关键配置。 ## 误区一:认为Seata能解决所有分布式事务问题 许多开发者认为引入Seata后就能高枕无忧,这是最危险的认知。Sea...

gitblog_00989的博客 394

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

Java Seata分布式事务框架详解

Java Seata分布式事务框架详解

码上红尘仙的博客 822

Seata:微服务架构下数据一致性的创新解决方案

在微服务架构的浪潮中,数据一致性问题成为技术架构师面临的最大挑战之一。当业务逻辑跨越多个服务边界时,如何保证跨服务的事务一致性?Apache Seata作为一款开源分布式事务解决方案,提供了从AT模式到Saga模式的完整技术栈,帮助企业在微服务转型中实现数据一致性保障。本文将深入探讨Seata的创新架构设计、核心实现原理以及在实际场景中的最佳实践。 ## 微服务数据一致性的核心挑战 传统单体应

gitblog_00229的博客 636

Spring Cloud 学习与实践(13):使用 Seata 解决分布式事务问题

第 12 章我们完成了 RabbitMQ 可靠消息链路: RabbitMQ 解决的是: 但是当前下单流程里还有一个更靠前的问题: 如果商品服务已经扣减库存,而订单服务随后保存失败,会发生什么?当前两个服务各自只有本地事务:所以原始结果可能是: 第 13 章就是围绕这个问题,引入 Seata AT 模式,让订单和库存能够作为一个全局事务整体提交或整体回滚。本章主线是: 2、本章环境与涉及模块 本章继续基于前面章节的 项目。本章主要修改两个服务:本章不需要让所有服务都接入 Seata:Spring 的: 只

作为一个长者,有必要记录下人生经验 352

3步实现分布式事务一致性:ShardingSphere与Seata的架构融合方案

在数据分片和微服务架构成为现代应用标配的今天,分布式事务一致性已成为技术架构师必须面对的核心挑战。当业务数据跨越多个数据库实例时,传统的事务机制失效,数据不一致风险急剧上升。Seata作为开源的分布式事务解决方案,与ShardingSphere的深度整合为企业提供了可靠的事务一致性保障方案。 ## 分布式事务的技术挑战与业务影响 ### 分库分表带来的事务边界突破 随着业务规模扩大,单库单表

gitblog_00240的博客 349

分布式事务实战指南:用Seata轻松解决微服务数据一致性难题 [特殊字符]

你是否曾为微服务架构中的数据不一致问题而头疼?当订单系统成功创建订单,库存系统却扣减失败;当支付系统完成转账,账户余额却没有更新——这些分布式事务的痛点,正是Apache Seata要解决的难题!作为一款高性能、易用的开源分布式事务解决方案,Seata为微服务架构提供了强大的数据一致性保障,让复杂的事务管理变得简单而可靠。 ## 为什么分布式事务如此重要?💡 在传统的单体应用中,事务管理相对

gitblog_00275的博客 947

分布式事务解决方案:「小马哥技术周报」Fescar与Seata实践教程

在分布式系统架构中,保证数据一致性是开发者面临的重大挑战,而分布式事务正是解决这一问题的关键技术。「小马哥技术周报」作为专注于微服务领域的技术分享平台,深入探讨了阿里巴巴开源的分布式事务解决方案——从Fescar到Seata的演进历程与实践方法,为开发者提供了完整的分布式事务处理指南。 ## 为什么需要分布式事务? 随着业务增长,单体应用逐渐拆分为多个微服务,每个服务维护独立的数据库。当一次业

gitblog_00450的博客 350

Lovable活动平台从0到1搭建全流程:手把手教你避坑87%团队踩过的12个致命错误

Lovable活动平台搭建全流程指南,助你高效落地线上营销活动。覆盖需求分析、模块设计、API集成到灰度发布,解决90%团队在权限配置、数据埋点、并发压测等环节的典型问题。强调低成本试错与快速迭代,值得收藏。

InstrWander的博客 372
上一篇: SOFA Weekly|SOFAArk 社区会议预告、Layotto 社区会议回顾与预告、社区本周贡献
下一篇: SOFA Weekly|可信基础设施技术分论坛、Layotto 社区会议回顾与预告、社区本周贡献...
SOFAStack
博客等级 码龄7年 747粉丝 389原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值