Pipeline
ProtocolHandler
Service
CoyoteAdapter
+start()+stop()
MapperListener
用来表示ServletCOntext,也就是一个独立的Web应用。
Servlet容器,真个Tomcat只有一个唯一一个Server实例。
Container
Bootstrap
Engine
Catalina
Context
Host
适配器模式,将Connector,MapperContainer解偶
Connector
AbstractExdpoint
Executor
+addChild()+backgroundProcessor()
表示Servlet引擎中的虚拟机,与服务器网络名有关必须在DNS服务器上注册
Web应用中的Servlet
Wrapper
Server
Mapper
+init()+start()+stop()+destroy()+addLifecycleListener()+removeLifecycleListener()
用于监听转化Socket,支持不同协议和I/O模型,将读取的Socket交给Container处理
应用服务器启动入口
适配协议和I/O模型
监听服务端接口,调用Processor进行数据读取
Lifecycle
一个Tomcat可以多个Service
维护容器映射信息,按照映射规则查找容器
Processor
Valve
同一个Service中的组件共享线程池