Repolode
apache

apache/incubator-seata

面向微服务架构的开源分布式事务解决方案,支持 AT、TCC、Saga 和 XA 模式。

Star
26,001
Fork
8,830
未关闭 Issue
911
最近提交
7天前

这是什么?

Apache Seata 是一个面向微服务的分布式事务框架。当一次业务操作跨越多个各自拥有数据库的服务时,单个本地事务已无法保证数据一致性。Seata 通过全局事务把这些分支事务组织起来,使其可以整体提交或回滚。

框架包含三个角色:事务协调器(TC)负责维护全局和分支事务的状态并驱动提交或回滚;事务管理器(TM)定义全局事务的边界;资源管理器(RM)负责注册分支事务并执行其提交或回滚。全局事务 ID(XID)会沿服务调用链传递,使各个服务能够加入同一个事务。

项目使用 Java 编写,提供通用的 seata-all 依赖以及面向 Spring Boot 应用的 seata-spring-boot-starter。生态中还有 Go 客户端、示例项目、Kubernetes 集成和命令行工具。

核心功能

  • 01通过 XID 在多个微服务之间传递并协调全局事务。
  • 02将角色划分为事务协调器、事务管理器和资源管理器。
  • 03提供 Java 库 seata-all 和 Spring Boot 启动器。
  • 04生态包括 Go 客户端、Kubernetes 集成和命令行工具。

适用场景

  • 在各自拥有数据库的微服务之间保持订单、支付和库存数据的一致性。
  • 为现有的 Java 或 Spring Boot 系统增加分布式事务支持。
  • 在 Kubernetes 上部署 Seata,作为微服务部署的一部分。

快速上手

  1. 1

    添加 Maven 依赖 seata-all 或 seata-spring-boot-starter(版本 2.5.0)

  2. 2

    按照官方快速入门指南部署 Seata 服务端

使用前须知

  • 运行分布式事务需要单独部署并维护 Seata 协调器(服务端)。
  • 项目在 README 中标注为 Apache 孵化器(incubating)项目。

标签

#distributed-transaction#microservice#java#spring-boot#saga#tcc#xa#at#consistency

常见问题

incubator-seata 是什么?
面向微服务架构的开源分布式事务解决方案,支持 AT、TCC、Saga 和 XA 模式。 Apache Seata 是一个面向微服务的分布式事务框架。当一次业务操作跨越多个各自拥有数据库的服务时,单个本地事务已无法保证数据一致性。Seata 通过全局事务把这些分支事务组织起来,使其可以整体提交或回滚。
incubator-seata 可以免费使用吗?用的什么许可证?
incubator-seata 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
incubator-seata 还在维护吗?
活跃维护中。incubator-seata 最近一次提交是在 2026年10月31日。
incubator-seata 适合用来做什么?
在各自拥有数据库的微服务之间保持订单、支付和库存数据的一致性。 为现有的 Java 或 Spring Boot 系统增加分布式事务支持。 在 Kubernetes 上部署 Seata,作为微服务部署的一部分。
incubator-seata 怎么安装和运行?
添加 Maven 依赖 seata-all 或 seata-spring-boot-starter(版本 2.5.0) 按照官方快速入门指南部署 Seata 服务端
在哪里获取 incubator-seata?
源代码和安装说明在 GitHub 上:https://github.com/apache/incubator-seata

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目