PS:建议调试的时候,关闭 定时器任务, startup方法里面的。
PS:这个博客仅仅是 记录而已。。没有其他的。
1,MycatServer 这个是作用是启动服务,初始化所有基本组件
构造方法
(1),AIO连接群组
(2),全局序列号
(3),XA事务全局ID生成
(4),sequence处理对象
(5),Mycat 内存管理类
(6),读取文件配置
(7),定时线程池,单线程线程池
(8),SQL记录器
(9),缓存服务初始化
(10),路由计算初始化
(11),SQL解析器
(12),catlet加载器
startup方法
(1),manager(管理服务)ManagerConnectionFactory
NIOAcceptor
(2),server (连接服务) ServerConnectionFactory
NIOAcceptor
(3),启动定时器任务
a,
NIOAcceptor nio配置,启动,与 accepter操作
NIOReactor nio的 读写
注意,这里被坑得不要不要的, nioreacter不进给 NIOAccepter用,也给 mysql连接用,所以一个操作,NIOReactor 的代码会读写两次
注意,这里是所有请求的开始,你可以从这里类开始,进行调试
NIOSocketWR
网络数据,读写操作。NIOReactor 调用
注意,这里是所有请求的开始,你可以从这里类开始,进行调试
NIOConnection
连接类,用于 从 accepter 与 mysql连接的封装