0 概述
http 请求由web服务器的文件系统来提供,常见的静态web内容 html、css、js、多媒体文件以及一些其它文件。
1 特点
- IO类型(主要为文件IO 和网络IO)
- 交互方式交互单一
- 资源内容相同(不考虑文件内容变化)
- 资源路径以文件路径和目录形式
- 请求方法主要是get
-
独占式(http2 支持多路复用)
2 使用场景
常见的使用场景
- web页面 展示
- css 文件
- js 文件
- 多媒体文件
-
文件下载
3 常见的静态web服务器
apache http server http://httpd.apache.org/
- nginx http://nginx.org/
microsoft iis https://www.iis.net/overview
不难发现这些常用的静态web服务器都是C/C++开发的,没有使用java开发主要是从内存&性能上考虑的。对于企业级应用都会在tomcat 前面架一层Nginx,静动分离。
静态服务器的优化last-modified (响应头)与 If-Modified-Since(请求头),HTTP的If-Modified-Since头标签与客户端缓存相互配合,大大节约了网络流量。
ETag(响应头,服务器缓存key)If-None-Match(请求头:服务器缓存key),这样可以减少服务器去访问文件。