目录
一. Tomcat 系统架构与原理剖析
b/s(浏览器/服务器模式) 浏览器是客户端(发送http请求) ———> 服务器端
(一)浏览器访问服务器的流程
http
请求的处理过程
![](https://i-blog.csdnimg.cn/blog_migrate/fa6936935076a963dfd857f9496d5500.png)
注意:浏览器访问服务器使⽤的是
Http
协议,
Http
是应⽤层协议,⽤于定义数据通信的格式,具体的数据传输使⽤的是
TCP/IP
协议。
(二)Tomcat 系统总体架构
1. Tomcat 请求处理⼤致过程
Tomcat
是⼀个
Http
服务器(能够接收并且处理
http
请求,所以
tomcat
是⼀个
http
服务器)
我们使⽤浏览器向某⼀个⽹站发起请求,发出的是
Http
请求,那么在远程,
Http
服务器接收到这个请求之后,会调⽤具体的程序(
Java
类)进⾏处理,往往不同的请求由不同的
Java
类完成处理。
![](https://i-blog.csdnimg.cn/blog_migrate/b6b7b0469f3ce1442742b950fbe7bb06.png)
HTTP
服务器接收到请求之后把请求交给
Servlet
容器来处理,
Servlet
容器通过
Servlet
接⼝调⽤业务类。
Servlet
接⼝和
Servlet
容器这⼀整套内容叫作
Servlet
规范
。
注意:
Tomcat
既按照
Servlet
规范的要求去实现了
Servlet
容器,同时它也具有
HTTP
服务器的功能。
Tomcat
的两个重要身份。
1
)
http
服务器
2
)
Tomcat
是⼀个
Servlet
容器
2. Tomcat Servlet容器处理流程
当⽤户请求某个
URL
资源时
1
)
HTTP
服务器会把请求信息使⽤
ServletRequest
对象封装起来
2
)进⼀步去调⽤
Servlet
容器中某个具体的
Servlet
3
)在
2
)中,
Servlet
容器拿到请求后,根据
URL
和
Servlet
的映射关系,找到相应的
Servlet
4
)如果
Servlet
还没有被加载,就⽤反射机制创建这个
Servlet
,并调⽤
Servlet
的
init
⽅法来完成初始化
5