文章23 | 阅读 16227 | 点赞0
本文基于seata 1.3.0版本
之前文章介绍了服务端的很多类,本文对这些类做个整理,算是对之前文章的一个总结。
下图是TC端的重点类及其之间的关系。
首先Server类是整个TC端的启动类,Server要去加载创建NettyRemotingServer、DefaultCoordinator、SessionManager。
NettyRemotingServer用于启动Netty,并初始化Netty的责任链,这样可以接收外部请求,五大处理器就是在Netty的责任链中使用,Netty接收到请求后,根据请求类型分发给这五个处理器中的某一个,之后处理器在将请求转发给DefaultCoordinator。
DefaultCoordinator也是在Server中创建并完成初始化,它主要接收五大处理器转发过来的请求,DefaultCoordinator再去调用核心处理类DefaultCore,从图上看到DefaultCore后面还有ATCore,ATCore其实相对于对DefaultCore在AT模式下的扩展。ATCore根据客户端请求回去完成全局事务和分支事务注册更新等。
SessionManager用于管理事务,所有的事务数据都需要在SessionManager里面保存,而且它还负责管理事务的提交、回滚、超时等。SessionManager有四种不同角色类型的管理器,分别管理不同场景的事务。
版权说明 : 本文为转载文章, 版权归原作者所有 版权申明
原文链接 : https://blog.csdn.net/weixin_38308374/article/details/108630172
内容来源于网络,如有侵权,请联系作者删除!