目录
一、Web运作原理探析
Key:理解Web的概念及其运作原理。
1.1、Web概念与特征
1990年,互联网之父Berners-Lee在自己编写的图形化Web浏览器"WorldWideWeb"上成功的访问了第一个名为"nxoc01.cern.ch"的Web服务器。经过几十年的发展,如今,Web是网络上使用最广泛的分布式应用架构,它旨在共享分布在网络上的各个Web服务器中的所有互相链接的信息。
Web使用HTML超级文本技术链接网络上的信息,采用客户/服务器通信模式,客户与服务器之间用HTTP超文本传输协议通信。归纳其特征为以下三点:
- 使用HTML超级文本技术表达信息、建立信息与信息的链接
- 采用统一资源定位符URL精确定位网络资源。URL是专为标识网络上的资源位置而设计的编制格式(编址格式:应用层协议+IP地址/域名+资源路径)
- 服务器与用户代理之间的数据交换遵循HTTP协议
1.2、HTTP协议简介
Web的核心是HTTP协议,Web的客户端和服务器能够交流的前提是遵循HTTP协议。HTTP协议是应用层协议,建立在TCP/IP基础之上,其规定了Web的基本运作过程,以及用户代理与Web服务器之间的通信细节。
HTTP协议规定的信息交换过程如下:
当用户输入一个URL地址时,用户代理会生成一个HTTP请求,建立与远程HTTP服务器的TCP连接,然后把HTTP请求发送给远程HTTP服务器,HTTP服务器再返回包含响应网页数据的HTTP响应,用户代理接收到这个响应后进行展示。当用户代理与服务器数据交换完毕,就会断开连接。
HTTP的请求格式和响应格式
HTTP协议规定,HTTP的请求由3部分构成,分别是:
- 请求方法、URI和客户端HTTP协议版本
- 请求头,包含许多有关客户端环境和请求正文的有用信息,如声明浏览器的类型,请求正文的类型和长度等
- 请求正文,协议规定请求头与请求正文之间必须以空行分隔,该空行表示请求头部分已结束
HTTP响应也由3部分构成,分别是:
- 服务器端HTTP协议的版本,状态码和描述
- 响应头,同请求头,响应头包含服务器类型,正文类型和长度等有用信息
- 响应正文
二、Tomcat简介
Key:Tomcat作为Web容器的基本功能
2.1、Web服务器和Servlet
在介绍Tomcat之前,建议先读这篇文章梳理清楚Web应用,Web服务器和Tomcat的关系,有助于理解Tomcat的由来和所扮演的角色:
原文链接:https://www.cnblogs.com/vipyoumay/archive/2017/08/31/7455431.html
《一文看懂web服务器、应用服务器、web容器、反向代理服务器区别与联系》
阅读上文可知,随着Web服务器朝着企业级应用方向发展,一些Web程序开发框架横空出世(如Tomcat),它们不解决具体的业务问题,只关注Web开发过程中的通用逻辑,如应用的快速部署、统一配置,通信、安全性和性能问题等。而业务逻辑则由应用软件开发商实现。开发人员只需将应用发布到Web服务器上运行即可。
可是Web应用和Web服务器作为两个不同的软件系统,它们之间如何进行协作?