1. 简要描述

浏览器拿到 index.html 文件后,就开始解析其中的 html 代码,遇到 js/css/image 等静态资源时,就向服务器端去请求下载(会使用多线程下载,每个浏览器的线程数不一样),这个时候就可以用上 keep-alive 特性了,建立一次 http 连接,可以请求多个资源。
浏览器在请求静态连接时(在未过期的情况下),向服务器端发起一个 http 请求(询问自从上一次修改时间到现在有没有对资源进行修改),如果服务器端返回 304 状态码(告诉浏览器服务器端没有修改),那么浏览器会直接读取本地的该资源的缓存文件。