基于 Spring Cloud 的服务治理框架,将 Spring Cloud 应用与 Polaris 服务发现和治理能力打通。
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
添加 Maven 依赖 seata-all 或 seata-spring-boot-starter(版本 2.5.0)
- 2
按照官方快速入门指南部署 Seata 服务端
使用前须知
- 运行分布式事务需要单独部署并维护 Seata 协调器(服务端)。
- 项目在 README 中标注为 Apache 孵化器(incubating)项目。
标签
常见问题
- 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 数据每日更新。
相关项目
3293508JavaOther维护活跃更新于 11天前
Solon 是一个 Java 企业级应用开发框架,定位为不依赖 Servlet 和 Spring 的轻量替代方案。
2800+4 本周286JavaApache-2.0更新于 22天前
基于 Go 标准库 net/http 构建的高性能、极简 Web 框架。
3.3万+4 本周3600GoMIT维护活跃更新于 8天前
一个面向微服务开发的 Go 框架,内置数据库支持与可观测性能力。
2.1万1790GoApache-2.0维护活跃更新于 昨天
模块化的 Go 应用框架,内置 HTTP 服务、ORM、缓存、日志和链路追踪,可整体使用也可按组件取用。
1.3万+9 本周1728GoMIT维护活跃更新于 22小时前
一个 Go 语言 RPC 微服务框架,支持可插拔的服务发现、多种传输协议和编解码器,并可通过 HTTP 跨语言调用。
83191173GoOther更新于 2个月前