💡
原文中文,约4000字,阅读约需10分钟。
📝
内容提要
本文介绍了Tomcat的启动过程,包括启动Service、Engine、线程池、mapperListener和Connector等组件。其中,Connector的添加需要先锁定,然后重新申请一个数组,再进行拷贝,最后将新添加的放到数组最后。另外,设置Engine时需要先将旧的Engine的Service设置为null,再将新的Engine的Service设置为当前的Service。最后,本文提到Tomcat的一大特点是通过Lifecycle的接口和模板方法调用实际的实现层的方法。
🎯
关键要点
- Tomcat的启动过程包括启动Service、Engine、线程池、mapperListener和Connector等组件。
- Connector的添加需要先锁定,然后重新申请一个数组,再进行拷贝,最后将新添加的放到数组最后。
- 设置Engine时需要先将旧的Engine的Service设置为null,再将新的Engine的Service设置为当前的Service。
- Tomcat通过Lifecycle的接口和模板方法调用实际的实现层的方法,这是其一大特点。
- 在启动过程中,首先设置状态,然后启动Engine、线程池、mapperListener和Connector。
- 添加Connector时,需判断当前状态是否可用,如果可用则启动Connector,并触发变更事件。
- 设置Engine时,需先将旧Engine的Service设置为null,然后启动新的Engine,并重启mapperListener。
➡️