首页 > 其他分享 >Seata的AT模式执行流程

Seata的AT模式执行流程

时间:2024-10-13 21:26:08浏览次数:1  
标签:回滚 服务 Seata 流程 事务 模式 执行

Seata的AT模式是Seata的默认模式。

总共分为几步
1.登记分支
先给每个要参与的服务(分支事务)登记一下,记录下它们是谁,要做什么。
2.执行操作
每个服务登记好后就开始执行自己的任务,执行前后记下每个服务操作前后的数据状态,以防万一需要回滚。
3.检查结果
等所有服务都执行完了,TC会检查所有服务执行的结果。
4.提交或回滚
如果出现一个事务执行失败,则全部事务都回滚
如果全部成功,则提交事务
5.结束事务
不管最后是提交还是回滚,这个分布式事务就算结束了,大家都回到了一个一致的状态

标签:回滚,服务,Seata,流程,事务,模式,执行
From: https://www.cnblogs.com/syunnrai/p/18463005

相关文章

  • 《深入理解分布式事务与Seata解决方案》
    分布式事务-重要1.数据库的事务1、事务概念事务是一个完整的,不可分割操作单元。整个事务要么全部执行成功,要么全部执行失败。事务具备4个特性:ACIDA:原子性【】C:一致性【数据的一致性:事务开始前和事务结束后,数据总量不变】I:隔离性【事务相互隔离,互不影响】D:持久性【事务一......
  • Seata的AT模式的执行流程
    Seata的AT模式:AT模式是Seata的默认模式,也是一种最终一致的分阶段事务模式,在一阶段,Seata拦截业务SQL,解析SQL语义,找到要更新的业务数据,并保存快照数据和行锁‌。简单来说就是看中结果,结果需要符合业务实际逻辑步骤准备undo-log(数据快照),简单说就是建个数据库用于备份数据,谁需要备份......
  • 简述Seata的AT模型
    AT模式是分阶段提交的事务模型,不过缺弥补了XA模型中资源锁定周期过长的缺陷。1.Seata的AT模型阶段一RM的工作:●注册分支事务●记录undo-log(数据快照)●执行业务sql并提交●报告事务状态阶段二提交时RM的工作:●删除undo-log即可阶段二回滚时RM的工作:●根据undo-log......
  • Seata的AT模式的执行流程
    AT模式是解决分布式事务的一种方式AT模式与XA模式都是分阶段提交的事务模型,弥补了XA模型中资源锁定周期过长的缺陷,企业基本都用。1.AT模式基本流程图:阶段一RM的工作:注册分支事务记录undo-log(数据快照)执行业务sql并提交报告事务状态阶段二提交时RM的工作:删除undo-log即......
  • 什么是分布式事务?使用Seata有哪些解决方案?Seata的AT模式的执行流程
    什么是分布式事务?简单来说:在分布式系统中出现的事务问题,称为分布式事务。为什么会出现分布式事务:一个分布式事务流程图在这个业务中有3个数据库连接,就没有办法做到全局的事务控制。这就是分布式事务问题分布式事务产生的情况有两种:​ 1.业务跨多个服务实现​ 2.业务跨多......
  • Seata的AT模式的执行流程
    在Seata的事务管理中有三个重要的角色:TC(TransactionCoordinator)-事务协调者:维护全局和分支事务的状态,协调全局事务提交或回滚。TM(TransactionManager)-事务管理器:定义全局事务的范围、开始全局事务、提交或回滚全局事务。RM(ResourceManager)-资源管理器:管理......
  • 「撸一手好代码」设计模式之单一职责原则
    在软件开发的世界里,随着项目规模的扩大和复杂度的增加,保持代码的清晰和可维护性变得尤为重要。而单一职责原则正是我们手中的一把利剑,帮助我们构建更加健壮、灵活的系统。一、什么是单一职责原则?单一职责原则(SingleResponsibilityPrinciple,简称SRP)是面向对象设计的基本......
  • Seata的AT模式的执行流程
    ·TC(TransactionCoordinator)-事务协调者:维护全局和分支事务的状态,协调全局事务提交或回滚。·TM(TransactionManager)-事务管理器:定义全局事务的范围、开始全局事务、提交或回滚全局事务。·RM(ResourceManager)-资源管理器:管理分支事务,与TC交谈以注册分支事务......
  • Seata的AT模式的执行流程
    Seata角色术语TC-事务协调者维护全局和分支事务的状态,驱动全局事务提交或回滚,即Seata服务端。TM-事务管理器定义全局事务的范围:开始全局事务、提交或回滚全局事务,在事务发起的客户端。RM-资源管理器管理分支事务处理的资源,与TC交谈以注册分支事务和报告分支事务的状态......
  • Rust实现单例模式
    前言rust是基于C++实现的,所以对于rust来讲,更适合的是面向过程的设计。不过,仍然可以基于rust采用一些面向对象的设计思想,本文主要讲述如何通过rust语法实现单例模式。一、什么是单例模式?单例模式是一种设计模式,用于确保一个类只有一个实例,并提供一个全局访问点。它常用于需要控......