分布式事务与 Seata:先想清楚值不值得学

这门课解决的是微服务架构下的数据一致性问题。单体应用里一个数据库就能靠本地事务兜底,可一旦把订单、库存、账户拆成独立服务,跨库甚至跨网络的操作就没法用 commit 和 rollback 保证要么全成功、要么全失败。很多做业务开发的人卡在这一步,知道理论却不敢在生产环境落手。资料从 ACID 复习切入,先把单机事务为什么在分布式场景下失效讲透,再依次拆解两阶段提交、三阶段提交的流程和缺陷,最后落到 Seata 这个框架上,讲 AT 模式的原理、服务器搭建、注册中心配置中心对接,以及微服务环境下的实战。它不是那种铺几十种中间件的大杂烩,主线很窄,就是帮你把跨服务事务从不敢碰变成能独立设计、能独立排障。

适合什么基础,建议先看哪几块

这份资料适合已经能独立写 Spring Boot 微服务、跑通过 Nacos 或类似注册中心、清楚 MySQL 事务基本概念的开发者。如果你连 Bean 注入和 Feign 调用都还在查文档,先补微服务基础再看,否则 Seata 的全局事务 ID 传递、数据源代理那几段会卡住。建议先看前两章:第一章用案例解释本地事务为什么失效,第二章梳理两阶段提交和三阶段提交的优缺点。这两块是判断后续模式适用场景的底子,不弄懂直接跳到 AT 实战,多半只会照着抄配置,遇到分支事务悬挂或空回滚就懵。看完协议层再进第三章,重点放在 Seata 服务端搭建和 AT 模式原理上,搞懂 undo_log 怎么生成、全局锁怎么协调,最后带着理解进第四章的微服务实战。

学完能独立做什么,资料怎么配合练习

学完之后,你应该能独立做这几件事:为一个已有的微服务系统判断需不需要引入分布式事务、选哪种模式更合适;从零搭建 Seata Server 并对接配置中心注册中心;在订单、库存、账户这类典型场景里落地 AT 模式,让跨服务调用要么整体提交、要么整体回滚;在出问题时看懂全局事务日志,定位是分支事务超时还是锁冲突。资料怎么配合练习很关键:视频里第三章的服务器搭建和第四章的 AT 实战必须边看边敲,别只用眼睛过一遍。建议自己起两个服务、两张表,构造一个扣库存成功但扣余额失败的场景,观察 Seata 怎么自动回滚。资料里没有现成脚手架就照着目录结构自己搭,这个过程本身就是检验你有没有真懂配置中心、数据源代理和事务上下文传递。如果时间紧,AT 模式这一条线先吃透,比囫囵吞枣看完全部模式更有用。

课程目录

课程目录13 集
  • 1-1 [回忆事务特性:ACID] 01-分布式事务课程介绍 (04:10).mp4
  • 1-2 [回忆事务特性:ACID] 02-回忆解释事务的特性与分布式情况下失效的案例 (12:18).mp4
  • 2-1 [分布式事务解决方案] 03-2PC协议流程和缺点 (14:03).mp4
  • 2-2 [分布式事务解决方案] 04-3PC协议流程和优缺点 (14:32).mp4
  • 3-1 [Seata分布式事务框架(一个软件)] 05-Seata-AT模式原理 (25:17).mp4
  • 3-2 [Seata分布式事务框架(一个软件)] 06-Seata配置中心注册中心 (12:49).mp4
  • 3-3 [Seata分布式事务框架(一个软件)] 07-Seata服务器搭建 (09:31).mp4
  • 4-1 [Seata的几种模式实战] 08-微服务分布式事务准备工作 (53:05).mp4
  • 4-2 [Seata的几种模式实战] 09-AT模式实战 (16:35).mp4
  • 4-3 [Seata的几种模式实战] 10-XA模式实战 (11:01).mp4
  • 4-4 [Seata的几种模式实战] 11-TCC模式实战-1 (01:02:48).mp4
  • 4-5 [Seata的几种模式实战] 12-TCC模式实战-2 (19:06).mp4
  • 4-6 [Seata的几种模式实战] 13-其他分布式事务解决方案 (13:24).mp4