12.2Seata简介

分类: Seata分布式事务

Seata 简介

Seata 是 Spring Cloud Alibaba 的分布式事务解决方案。本节将学习 Seata 的基本概念。

本章节内容参考官方文档顺序: 根据 Seata 官方文档 - What is Seata,官方文档按照以下顺序讲解:

  1. What is Seata(Seata 是什么)
  2. Core Functions(核心功能)
  3. Transaction Modes(事务模式)
  4. Architecture(架构设计)

本节将学习:Seata 是什么、核心功能、事务模式,以及架构设计。

Seata 是什么

定义

Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。

名称含义

Seata 名称含义:

  • Se:Simple(简单)
  • a:Extensible(可扩展)
  • t:Available(可用)
  • a:Transaction(事务)

核心功能

主要功能

Seata 核心功能:

  1. AT 模式:自动模式,无侵入
  2. TCC 模式:补偿模式
  3. Saga 模式:长事务模式
  4. XA 模式:XA 协议模式

事务模式

模式说明

Seata 事务模式:

  • AT 模式:自动模式,推荐使用
  • TCC 模式:补偿模式,高性能
  • Saga 模式:长事务模式
  • XA 模式:XA 协议模式

架构设计

架构组件

Seata 架构组件:

  • TC(Transaction Coordinator):事务协调者
  • TM(Transaction Manager):事务管理器
  • RM(Resource Manager):资源管理器

架构图

官方资源

根据 Seata 官方文档GitHub 仓库,Seata 的核心特性包括:

  1. 多种事务模式支持:Seata 支持 AT(自动事务)、TCC(补偿事务)、SAGA(长事务)等多种分布式事务模式。官方文档强调,AT 模式对业务代码零侵入,通过数据源代理自动管理事务;TCC 模式需要业务实现 Try、Confirm、Cancel 三个方法,但性能更好;SAGA 模式适合长事务场景。

  2. 高性能和易用性:Seata 的设计目标是提供高性能、易用的分布式事务解决方案。官方文档中提到,Seata 的 AT 模式通过 undo_log 表记录数据变更,实现自动回滚,对开发者透明,使用简单。

  3. 高可用架构:Seata 支持集群部署,提供了多种存储模式(File、DB、Redis 等),可以满足不同规模的应用需求。官方文档详细说明了如何配置 Seata 的高可用部署方案。

参考资源

本节小结

在本节中,我们学习了:

第一个是 Seata 是什么。 Seata 是分布式事务解决方案。

第二个是核心功能。 AT、TCC、Saga、XA 模式。

第三个是事务模式。 不同事务模式的特点。

第四个是架构设计。 TC、TM、RM 组件。

这就是 Seata 简介。了解 Seata 的基本概念,是使用 Seata 的基础。

在下一节,我们将学习 Seata 事务模式。