秃秃爱健身
熟读JDK、SSM、SpringCloud生态源码,对源码有独特的见解,可以写出让大多数人看懂的源码分析文章。
展开
-
SpringCloud集成Seata saga模式案例
SpringCloud集成Seata saga模式案例原创 2023-04-04 07:30:00 · 4641 阅读 · 62 评论 -
saga模式、Seata saga模式详解
saga论文摘要?什么是长事务?saga的两种执行方式:forward recovery、backward recovery?saga协调:choreography策略、orchestration策略?seata saga如何实现?seata saga模式如何基于状态机实现。原创 2023-03-31 10:22:31 · 3290 阅读 · 58 评论 -
Seata XA模式概述+案例
XA协议介绍?为什么要使用Seata XA模式?XA模式的优缺点?Seata XA模式介绍、Seata XA模式集成案例原创 2022-12-02 13:19:26 · 6892 阅读 · 13 评论 -
详述分布式事务Seata TCC空回滚/幂等/悬挂问题、解决方案(seata1.5.1如何解决?)
1、Seata TCC空回滚、幂等、悬挂问题描述、问题出现原因、通用解决措施。2、seata1.5.1新版本如何兼容解决TCC空回滚、幂等、悬挂问题的。解决方案目前是唯一的:* 增加事务控制表,核心三个字段:全局事务ID(tx_id)、分支事务ID(branch_id)、状态(status);* TCC分支事务状态,包含四种状态:已尝试、已提交、已回滚、空悬挂。* try() 时插入记录;cancel() 时有记录则更新记录状态、没有记录则插入数据;confirm() 时更新记录状态。原创 2022-11-16 07:45:45 · 5483 阅读 · 35 评论 -
Spring Cloud整合Seata实现TCC分布式事务模式案例(含源码)
1、Spring Cloud整合Seata实现TCC分布式事务模式案例;2、TCC分布式事务模式介绍3、Seata Tcc模式结合JPA使用时,cancel() / commit()方法中的update/delete/insert类型的SQL语句未执行问题分析、解决。原创 2022-11-08 07:30:00 · 7420 阅读 · 79 评论 -
分布式事务Seata源码解析13:TCC事务模式实现原理
1、TCC事务模式实现原理;2、TCC资源TCCResource解析;3、TCCResource注册到TC的流程;4、TCC执行上下文BusinessActionContext详解;5、TCC分支事务执行流程、ActionInterceptorHandler解析;6、@LocalTCC使用原理、@TwoPhaseBusinessAction使用原理、@BusinessActionContextParameter使用原理;7、TCC分支事务提交、回滚原理。原创 2022-11-10 19:00:00 · 5407 阅读 · 26 评论 -
分布式事务Seata源码解析11:全局事务执行流程之两阶段全局事务提交
1、seata client(TM)发起全局事务提交的流程;GlobalCommitRequest如何发送、处理的?2、seata server(TC)处理全局事务提交的流程;seata server / TC如何处理异步全局事务提交?3、TC如何清理全局锁、TC如何清理undo_log日志、TC如何删除branch_table分支事务数据、TC如何删除global_table全局事务数据?原创 2022-11-01 13:00:12 · 2379 阅读 · 69 评论 -
分布式事务Seata源码解析12:全局事务执行流程之全局事务回滚
1、@GlobalTransactional中配置异常回滚类型rollbackFor、异常不回滚类型noRollbackFor的原理?2、全局事务执行流程之全局事务回滚流程?3、seata RM如何根据undo log内容构建回滚SQL,回滚分支事务?原创 2022-11-04 07:45:00 · 4000 阅读 · 35 评论 -
分布式事务Seata源码解析十:AT模式回滚日志undo log详细构建过程
AT模式下undo log的构建 和 持久化是分两阶段进行的:* **一阶段:** * 在执行业务SQL的同时,会根据业务SQL构建出before image 和 after image镜像数据的查询SQL; * 基于查询SQL的结果,每一列的数据采用`Field`对象存储、每一行数据采用`Row`对象存储,Row和Field对象的关系为一对多; * 由于业务SQL可能设计到多行,所以最终数据镜像采用`TableRecords`对象存储,TableRecords和Row也是一对多原创 2022-10-24 19:59:43 · 4288 阅读 · 85 评论 -
分布式事务Seata源码解析九:分支事务如何注册到全局事务
1、Seata中分支事务如何注册到全局事务中?2、BranchRegisterRequest、SessionHolder、GlobalSession、BranchSession、LogStore介绍3、全局锁的加锁、锁冲突检查原创 2022-10-22 07:30:00 · 1255 阅读 · 36 评论 -
分布式事务Seata源码解析八:本地事务执行流程(AT模式下)
1、SeataDataSourceProxy、DataSourceProxy、ConnectionProxy、StatementProxy、PreparedStatementProxy介绍;2、Seata本地事务执行入口、整体流程?3、Seata本地事务提交流程?4、Seata全局锁冲突重试机制LockRetryPolicy?原创 2022-10-19 14:06:10 · 2144 阅读 · 84 评论 -
【微服务39】分布式事务Seata源码解析七:图解Seata事务执行流程之开启全局事务
源码分析Seata事务执行流程;源码分析Seata如何开启一个全局事务;Seata全局事务不会被开启的情况;Seata六种事务隔离级别的具体逻辑;TM如何请求TC开启全局事务;TC接收到TM的请求如何开启全局事务;TC开启全局事务时都做了什么;原创 2022-10-12 07:19:17 · 2123 阅读 · 108 评论 -
【微服务38】分布式事务Seata源码解析六:全局/分支事务分布式ID如何生成?序列号超了怎么办?时钟回拨问题如何处理?
源码解析Seata使用雪花算法生成分布式ID、全局事务ID、分支事务ID;当某一个毫秒内的序列号用尽时如何处理?时钟回拨问题如何处理?UUIDGenerator解析、IdWorker解析原创 2022-09-18 21:28:50 · 1849 阅读 · 70 评论 -
【微服务37】分布式事务Seata源码解析五:@GlobalTransactional如何开启全局事务
分布式事务seata中@GlobalTransaction如何开启事务?原创 2022-09-14 07:00:00 · 6161 阅读 · 88 评论 -
【微服务36】分布式事务Seata源码解析四:图解Seata Client 如何与Seata Server建立连接、通信【云原生】
TM / RM在实例化GlobalTransactionScanner之后 开始初始化 向TC发起注册请求、建立长连接,但是针对RMClient并不会在初始化时立即和TC建立长连接;而是等到DataSourceProxy加载之后,才会立即和TC建立长连接;或者等每30秒执行一次的定时任务和TC建立长连接,但是如果DataSourceProxy还没有加载,则建立长连接时,资源的标识resourceID为null。...原创 2022-08-30 07:53:48 · 3692 阅读 · 109 评论 -
分布式事务Seata源码解析3:从Spring Boot特性来看Seata Client 启动时都做了什么
Seata Client启动时都做了什么?xid是如何在seata client之间传递的、seata client的初始化逻辑、seata client和seata server建立长连接的入口、AT模式下RM如何RC建立长连接原创 2022-08-26 06:55:56 · 1621 阅读 · 18 评论 -
【微服务34】分布式事务Seata源码解析二:Seata Server启动时都做了什么【云原生】
源码剖析Seata Server启动时都做了什么?原创 2022-08-23 07:15:00 · 4440 阅读 · 149 评论 -
【微服务33】分布式事务Seata源码解析一:在IDEA中启动Seata Server
IDEA中启动Seata Server原创 2022-08-22 06:30:00 · 2279 阅读 · 32 评论 -
【微服务 32】你为Spring Cloud整合Seata、Nacos实现分布式事务案例跑不起来苦恼过吗(巨细排坑版)【云原生】
你还在为官方案例跑不起来而苦恼吗?来看这里的Spring Cloud + Nacos + Seata + OpenFeign + JPA实现分布式事务的案例原创 2022-08-11 17:45:37 · 2551 阅读 · 90 评论 -
【微服务 31】超细的Spring Cloud 整合Seata实现分布式事务(排坑版)【云原生】
超细的Spring Cloud 整合Seata实现分布式事务,数据持久化采用JPA、RPC采用OpenFeign原创 2022-08-07 22:04:53 · 3230 阅读 · 2 评论