03 Tomcat架构简介

在这里插入图片描述

HTTP协议

HTTP((HyperText Transfer Protocol)即超文本传输协议。是一个简单的请求-响应协议,它通常运行在TCP之上。运行于应用层。

HTTP是一种无状态的协议,无状态是指Web浏览器与Web服务器之间不需要建立持久的连接,这意味着当一个客户端向服务器端发出请求,然后Web服务器返回响应,连接就被关闭了,在服务器端不保留连接的有关信息。也就是说,HTTP请求只能由客户端发起,而服务器不能主动向客户端发送数据。

HTTP协议的工作原理

HTTP协议是浏览器与服务器之间的数据传送协议。作为应用层协议,HTTP是基于TCP/IP 协议来传递数据的(HTML文件、图片、查询结果等),HTTP协议不涉及数据包 (Packet)传输,主要规定了客户端和服务器之间的通信格式.

在这里插入图片描述

  1. 用户通过浏览器进行了一个操作,
  2. 浏览器向服务端发出TCP连接请求。
  3. 服务程序接受浏览器的连接请求,并经过TCP三次握手建立连接。
  4. 浏览器将请求数据打包成一个HTTP协议格式的数据包。
  5. 浏览器将该数据包推入网络,数据包经过网络传输,最终达到端服务程序。
  6. 服务端程序拿到这个数据包后,同样以HTTP协议格式解包,获取到客户端的意图。
  7. 得知客户端意图后进行处理,比如提供静态文件或者调用服务端程序获得动态结果。
  8. 服务器将响应结果按照HTTP协议格式打包。
  9. 服务器将响应数据包推入网络,数据包经过网络传输最终达到到浏览器。
  10. 浏览器拿到数据包后,以HTTP协议的格式解包,然后解析数据。
  11. 浏览器将HTML文件展示在页面上。

HTTP服务器 架构

Tomcat作为一个HTTP服务器,主要实现接受连接、解析请求数据、处理请求和发送响应等功能。

本专栏第一篇文章中也提到过。

  • JavaWeb应用实现标准Servlet接口
  • Tomcat提供访问Servlet的入口
    在这里插入图片描述
    Tomcat按照Servlet规范的要求实现了Servlet容器,具有HTTP服务器的功能。提供http访问的统一入口。

    Servlet容器工作流程
    在这里插入图片描述

Tomcat架构

Tomcat实现两个核心功能;设计了两个核心组件。 成就了一个优秀的web服务器。

在这里插入图片描述

核心功能

  • 处理Socket连接,负责网络字节流与Request和Response对象的转化。
  • 加载和管理Servlet,以及具体处理Request请求。

核心组件

  • Coyote 连接器 :负责对外交流
  • Container 容器 :负责内部处理

连接器和容器 内容较多,后面单独梳理

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EngineerForSoul

你的鼓励是我孜孜不倦的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值