1、NioEndPoint接收到请求开启线程执行其内部类SocketProcessor的run(),然后执行doRun方法
2、采用责任链模式调用invoke方法
调用类如下图所示:
StandardEngineValve
AccessLogValve
ErrorReportValve
StandardHostValve
NonLoginAuthenticator
StandardContextValve
StandardWrapperValve
3、Http11ConnectionHandler http请求协议的处理
4、CoyoteAdapter将请求转换为Request/Response对象,把请求送入Pipeline管道
5、ipeline管道处理
Engine 引擎处理,获取Host主机,转发Host处理;
Host 主机处理,获取Context,Context执行处理;
Context 上下文处理,拿到对应的Wrapper,开始将请求交给Wrapper处理;
Wrapper 最终,包装器开始处理,执行FilterChain过滤链,然后执行servlet