Tomcat源码分析--Connector(连接器)
来源:互联网 发布:淘宝二加一正品 编辑:程序博客网 时间:2024/04/29 04:45
在上一篇中分析了Tomcat的启动过程。也提到了Service会启动Connector。现在让我们来看看Connector具体做了什么。
从Connector类中有两个比较重要的属性:protocolHandler(协议)和adapter(适配器)。既然是连接器,(1)需要具备接收客户端请求的连接。(2)然后将客户端的socket请求的数据,解析和包装成为Http数据格式。(3)然后将Http数据包交给容器去处理。protocolHandler完成(1)(2),adapter完成(3)。
1.Connector构造函数
在Connector构造函数中,通过反射生成protocolHandler。协议的设置在conf/server.xml中配置,通过setProtocol来赋值。
2.Connector的初始化方法。
在Connector调用initInternal的初始化方法。主要完成了2个操作:
- 初始化适配器。
- 初始化protocolHandler的init()方法。
protocolHandler的init方法会调用父类AbstractProtocol的init方法。
其父类的init()方法会调用endpoint的init方法。endpoint提供了底层的网络i/o 连接。
3.Connector的Start方法。
介绍完Connector的Init方法,我们来看看Connector的start方法。
Connector方法中调用了protoHandler的start方法。protoHandler是个接口,我们以其具体的实现类Http11NioProtocol来介绍。从类名上可以看出,该类使用的是Java nio的方式进行连接的。Http11NioProtocol会最终调用其底层的Nio实现类NioEndPoint来接收请求。
至此Connector启动完成。
0 0
- Tomcat源码分析--Connector(连接器)
- Tomcat -- 源码分析No2(连接器Connector)
- Tomcat源码阅读系列(四)Connector连接器
- tomcat源码分析之connector
- Tomcat源码分析之Connector
- Tomcat源码分析之Connector
- [Tomcat] Coyote连接器框架源码分析
- Tomcat基于Coyote的连接器源码分析
- Tomcat基于Coyote的连接器源码分析
- [Tomcat] Coyote连接器框架源码分析
- Tomcat源码解析(五):Connector连接器的初始化和启动流程
- Tomcat原理学习---连接器Connector(一)
- Tomcat原理学习---连接器Connector(二)
- tomcat源码:Connector模块
- tomcat源码浅析--connector
- tomcat架构分析(connector)
- Tomcat分析--Connector
- loadrunner Error code 10053 & Tomcat 连接器(connector)优化
- 农村姑娘误加了一个博士群,结果...
- 通过 js 设置点击查看原图
- Android实现智能家居
- Cocosd2d-js 实现序列化Json文件
- Java EE中filter(过滤器)的使用
- Tomcat源码分析--Connector(连接器)
- Python字符串操作
- Zookeeper web工具总结
- Python数据分析学习笔记三
- kdmctvyz
- spring boot 使用application.properties 进行外部配置
- 初步认识redis
- js原型继承机制实例详解
- Android 学习记录-UDACITY项目0反馈