1. tomcat 组件以及各自的职责
|-Bootstrap: tomcat运行入口,完成CommonClassLoader,SharedClassLoader,CatalinaClassLoader类加载器的创建
|-Catalina:
|-Server: 监听port关闭tomcat
|-Service:关联Connector和Engine
|-Connector:负责监听socket请求
|-Engine:接收和处理来自connector所有的请求,并响应返回
|-Host:
|-context:一个context表示一个web应用
2. tomcat如何部署war包的?
以下时序图基于tomcat 8.5.40,分成两张时序图
这里可以看出先初始化ServletContextListener,然后是Filter,最后是Servlet
3. 请求是如何到达web项目,并且处理响应的?
tomcat采用IO多路复用模型
1)acceptor线程
2)poller线程
3)processor线程