Tomcat初始化流程图
2020-08-14 16:43:07 12 举报
Tomcat初始化流程图
作者其他创作
大纲/内容
NioEndpoint.bind()
2
初始化mapperListener该组件用于请求到容器的映射
1
service.init()
模板方法模式
3
ContainerBase.initInternal()
StandardEngine.initInternal()
4
1.CommonClassLoader
获取Catalina中的SharedClassLoader加载jar包
engine.init()
Endpoint.init()
与server.init()同理StandardService.initInternal()
解析server.xml配置或server-embed.xml配置
main函数
实例化BootStrap对象
调用父类
3.CatalinaClassLoader
反射调用Catalina类中的load方法org.apache.catalina.startup.Catalina
Bootstrap启动类org.apache.catalina.stratup.Bootstrap
调用
注册StringCache注册MBeanFactory用于管理server初始化全局资源
初始化线程池用于子容器的init
初始化Connector连接器connector.init()connector.initInternal()
启动
实例化三大类加载器
Endpoint负责Socket监听
StandardServer.initInternal()
创建server实例具体类型(StandardServer)
2.SharedClassLoader
初始化Server实例getServer().init()
super.initInternal()
入口
初始化BootStrap对象bootStrap.init()
反射创建Catalina实例并设置Catalina实例中的类加载器(SharedClassLoader)
初始化startStopExecutor线程池该线程池用于子容器的start以及stop
Tomcat初始化流程
0 条评论
下一页