tomcat源码分析 StandardServer初始化过程

----------------------------以下为initInternal方法----------------------------

1、调用父类org.apache.catalina.util.LifecycleMBeanBase#initInternal方法,注册MBean

2、注册本类的其它属性的MBean

3、NamingResources初始化

   

globalNamingResources.init();

 

4、从common ClassLoader开始往上查看,直到SystemClassLoader,

     遍历各个classLoader对应的查看路径,找到jar结尾的文件,读取Manifest信息,

     加入到ExtensionValidator#containerManifestResources属性中。

5、初始化service,默认实现是StandardService。

  i) 调用super.initInternal()方法

     ii) container初始化,这里container实例是StandardEngine。

     iii) Executor初始化

     iv)Connector初始化,在我本机上是如下2个连接。

         a)org.apache.catalina.connector.Connector   Connector[HTTP/1.1-8080]

         b) org.apache.catalina.connector.Connector   Connector[AJP/1.3-8009]

 

 

----------------------------以下为startInternal方法---------------------------

1、触发CONFIGURE_START_EVENT事件。

2、设置本对象状态为STARTING

3、NameingResource启动。

    

globalNamingResources.start();

4、StandardService启动。

  i)  设置状态为STARTING

     ii)  container启动,即StandardEngine启动

     iii)  Executor 启动

     iv) Connector启动。

         a)org.apache.catalina.connector.Connector   Connector[HTTP/1.1-8080]

         b) org.apache.catalina.connector.Connector   Connector[AJP/1.3-8009]

5、设置状态为STARTED 

 

 

转载于:https://www.cnblogs.com/knockon/p/3330756.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值