首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Seata源码
铿然架构
创建于2023-10-12
订阅专栏
Seata源码分析,熟悉底层逻辑。
等 14 人订阅
共20篇文章
创建于2023-10-12
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
Seata源码(二十)面试题
seata支持的事务模式有哪些? A:4种模式,分别是AT、XA、TCC、SAGA。 undo日志的生命周期,何时生成,入库,清理? A:undo日志在SQL执行的前后分别生成before、after
Seata源码(十九)AT和XA模式例子
1. 安装Server 1.下载软件 https://github.com/seata/seata/releases 2.本地目录解压 D:\MyApp\seata\seataserver1.7.1
Seata源码(十八)小结
Seata的核心流程,框架,处理逻辑大部分已分析,其实还有不少内容可以继续分析,但基于初衷只是作个大致了解,做到心中有数,而非深度技术选型或者要出一本关于seata源码的书。所以暂且到这里。
Seata源码(十七)XID传递
XID作用 全局事务处理过程中,XID将一次业务请求涉及的所有微服务的数据库事务关联起来,XID也用于全局session的管理。 也因为如此,XID需要在多个微服务之间传递。
Seata源码(十六)Seata全局事务生命周期
1. 目的 对于如下支持全局事务的微服务调用场景: 通过本章能回答如下问题: ● 何时触发全局事务开启? ● 何时注册分支事务? ● 全局/分支事务commit在什么时机和如何触发?
Seata源码(十五)TM注册
TM (Transaction Manager) - 事务管理器,定义全局事务的范围:开始全局事务、提交或回滚全局事务。
Seata源码(十四)RM资源注册
TC (Transaction Coordinator) - 事务协调者 维护全局和分支事务的状态,驱动全局事务提交或回滚。 RM (Resource Manager) - 资源管理器。
Seata源码(十三)Seata消息处理框架
相关阅读: 1. 概述 Seata消息框架底层基于Netty,核心能力包括消息发送,接收,派发,数据压缩/解压缩,序列化/反序列化,编/解码,消息合并,同步/异步,以及消息处理hook。 2. 类结构
Seata源码(十二)Session管理和持久化
全局session 在Seata全局事务处理过程中,涉及到RM、TM、TC之间的多次交互,为了识别和获取到整个交互过程中的数据,就需要通过session来统一管理。
Seata源码(十一)TC接收到请求后的处理过程
相关阅读: 1. TC接收请求处理类结构 如下图是TC接收到请求后处理的核心类结构,标号是调用顺序(这里展现的是最长路径,并非所有消息都是这个路径): 2. 源码 2.1 ServerHandler
Seata源码(十)RM接收到请求后的调用过程
1. 交互场景 本文描述如下图中,TC到RM的黑色线条,RM接收到请求之后的处理过程。 2. 类结构 相关类结构如下,标号是调用顺序。
Seata源码(九)TCC核心类和处理逻辑
相关阅读: 兄弟姐妹们,帮忙点赞、评论、收藏三连,各位的支持更有快速连更的动力,多谢了!!! 兄弟姐妹们,帮忙点赞、评论、收藏三连,各位的支持更有快速连更的动力,多谢了!!! 兄弟姐妹们,帮忙点赞、评
Seata源码(八)Seata事务生命周期hook
相关阅读: 1. hook概述 Seata提供给了事务处理hook,在事务的生命周期过程中可以扩展处理逻辑。事务hook,可由开发者定制实现,相关类结构如下: 类 描述 TransactionalTe
Seata源码(七)Seata事务故障处理
相关阅读: 1. 概述 Seata提供了故障处理接口和默认实现类,在发生故障时可以处理。 2. 核心类结构 引入不同的库实例化FailureHandler子类的入口类不同: groupId artif
Seata源码(六)Seata的undo日志操作
相关阅读: 1. 概述 1.1 作用 undo日志用于AT模式下全局事务发生异常时,做数据回滚。 1.2 日志结构 属性 描述 id 主键 branch_id 分支事务ID xid 全局事务ID co
Seata源码(五)Seata数据库操作
相关阅读: 1. JDBC代理 通过代理JDBC接口可以在访问实际的DB操作方法前或者方法后增加扩展能力,Seata也使用了JDBC代理来增强扩展能力。JDBC代理的接口结构如下: 代理对象(prox
Seata源码(四)全局锁GlobalLock
相关阅读: 1. 概述 1.1 作用 对某条数据进行更新操作,如果全局事务正在进行,当某个本地事务需要更新该数据时,需要使用@GlobalLock确保其不会对全局事务正在操作的数据进行修改。防止的本地
Seata源码(三)事务处理类结构和流程
相关阅读: 1. 核心类结构 类 描述 GlobalTransactionalInterceptor 全局事务拦截器,拦截GlobalTransactional注解和GlobalLock注解的方法做相
Seata源码(二)事务基础对象
相关阅读: 1. 全局事务注解 属性 描述 timeoutMills 全局事务超时时间,默认值60秒,配置参数:client.tm.default-global-transaction-timeout
Seata源码(一)初始化
相关阅读: 1. 核心操作 1.初始化GlobalTransactionScanner 2.GlobalTransactionScanner识别启用全局事务的类,添加不同拦截器 3.初始化TM客户端和