Spring内置Tomcat
Tomcat 相关组件类
TomcatServletWebServerFactory
Tomcat
TomcatWebServer
StandardServer(Server组件)
父类LifecycleBase
StandardService (Service组件)
Connector
Springboot内嵌Tomcat —— Connector的工作过程
StandardEngine Engine组件
父类 容器组件ContainerBase
StandardHost Host组件
StandardContext Context组件
StandardWrapper Wrapper组件
Springboot 内嵌Tomcat启动
在Springboot启动过程中的容器刷新阶段会执行createWebServer创建Tomcat实例,熟悉Tomcat架构以及启动过程就会对这里组件的创建非常熟悉,启动流程
this.getTomcatWebServer(tomcat)
new TomcatWebServer(tomcat, this.getPort() >= 0, this.getShutdown());
TomcatWebServer#initialize();
this.tomcat.start();
StandardServer#start
LifecycleBase#start
StandardServer#startInternal
Service#start Service组件启动
Engine、Connector组件启动
Engine会根据子容器的关系启动host,host启动context,context启动wrapper
拓展
嵌入式tomcat的不使用web.xml原理分析
请求到来
Tomcat请求处理过程
tomcat IO篇
Springboot内嵌Tomcat —— Connector的工作过程
Springboot内嵌Tomcat —— Connector的工作过程
tomcat 请求到来 IO处理
tomcat请求处理篇
这个过程的重点在于过滤链。
Servlet执行入口 this.servlet.service(request, response)
进入Servlet工作场景。