tomcat

Apache Tomcat Web Application Server

此文介绍Tomcat相关原理及配置,文章并非一次将所有关于Tomcat(基于8.5.50)的知识点全罗列出来,因此文章可能会不定期更新。若有更新会及时更新以下的目录: Tomcat系统架构与原理剖析 Tomcat服务器核心配置 Tomcat类加载机制剖析 Tomcat对HTTPS的支持及Tomcat性能优化策略 1. Tomcat系统架构与原理剖析 1.1. 浏览器访问服务器的流程 HTTP请求只是定义数据的组织格式(通信格式),是应用层协议。数据传输依靠的是TCP/IP协议; Tomcat使用socket实现了浏览器与服务器的通信; 1.2. Tomcat系统总体架构 1.2.1. Tomcat请求处理大致过程 Tomcat是HTTP服务器,Tomcat接收到浏览器发送的HTTP请求后,会调用相应的业务类。如图3: 如图3,若HTTP服务器(Tomcat)直接调用业务类完成业务处理,那么会存在耦合性大的问题。所以实际上Tomcat的结构如图4: HTTP服务器接收请求后分配给Servlet容器处理,Servlet容器通过Servlet接口调用业务类。Servlet接口和Servlet容器这一整套内容叫作Servlet规范。* Tomcat既按照Servlet规范的要求实现了Servlet容器, 同时也具有HTTP服务器的功能。因此Tomcat的两个重要部分:1)HTTP服务器;2)Servlet容器 1.2.2. Tomcat Servlet容器处理流程 HTTP服务器将请求信息使用ServletRequest对象封装起来; Servlet容器拿到请求后,根据URL和Servlet的映射关系,找到相应的Servlet; 如果Servlet还没被加载,就用反射机制创建这个Servlet,并调用Servlet的init方法完成初始化; 调用此Servlet的service方法来处理请求,处理结果使用ServletResponse对象封装; 将ServletResponse对象返回给HTTP服务器,HTTP服务器会将响应发送给客户端。...

Continue reading...