Tomcat 基础及配置

一、原理 1. 浏览器访问服务器流程

    1. 用户输入请求到浏览器
    2. 浏览器发送TCP连接请求
    3. 服务器接收到(忽略Nginx等情况)请求并三次握手建立连接
    4. 浏览器生成HTTP的数据包并发送
    5. 服务器收到并解析
    6. 服务器执行请求并封装结果发送
    7. 浏览器收到HTTP格式数据包并解析渲染
2. Tomcat请求处理流程
首先,Tomcat是一个HTTP服务器
Tomcat中的HTTP服务器(Connectot组件)在接收到请求之后把请求交给Servlet容器(Conntainer组件)来处理(解耦),Servlet容器通过Servlet接口调用业务类,Servlet容器这一套内容叫做Servlet规范
3. Servlet容器处理流程
  1. HTTP服务器把请求信息使用ServletRequest对象封装
  2. 根据配置,找到url和Servlet的映射, 调用Servlet容器中的某个具体Servlet
  3. 如果Servlet还没有加载,就用反射机制创建这个Servlet,并调用Servlet的init方法来完成初始化
  4. 调用这个Servlet的service方法处理请求,处理结果用ServletResponse对象封装
  5. ServletResponse 对象返回给HTTP服务器,HTTP服务器把响应发给客户端
二、组件 1. 连接器组件Coyote
客户端通过Coyote与服务器建立连接,发送并响应请求
  1. Coyote 封装底层网络通信(Socket请求及响应处理)
  2. Coyote 使 Catalina容器(容器组件)与具体的请求及I/O操作解耦
  3. Coyote 将Socket 输入封装Request对象,容器处理后,Catelina通过Response对象将结果写入输出流
  4. Coyote 去负责具体应用层协议和传输层io相关内容
    ### 2. Servlet 容器 Catalina
Tomcat由一系列可配置(server.xml)的组件构成的web容器,Catalina是它的Servlet容器。某种方面说,Tomcat就是一个Servlet容器,Catalina是它的核心组件。
三、核心配置 【Tomcat 基础及配置】配置文件server.xml

    推荐阅读