技术开发 频道

Tomcat处理HTTP请求:Connector源码

  线程池的Worker线程中的run方法中的部分代码如下(请注意handler.process(socket)这一句):

  注意:①调用了hanler.process(socket)来生成响应数据)

  ②数据生成完之后,注册WRITE事件的,代码如下:

  5. Handle接口实现类通过Adpater调用Servlet容器生成响应数据

  NioEndpoint类中的Handler接口定义如下:

  其中process方法通过Adapter来调用Servlet Container生成返回结果。Adapter接口定义如下:

  6. 小结

  实现一个tomcat连接器Connector就是实现ProtocolHander接口的过程。Connector用来接收Socket Client端的请求,通过内置的线程池去调用Servlet Container生成响应结果,并将响应结果同步或异步的返回给Socket Client。在第三方应用集成tomcat作为Web容器时,一般不会动Servlet Container端的代码,那么connector的性能将是整个Web容器性能的关键。

0
相关文章