页面加载及优化
页面加载过程 一、 DNS解析(域名解析) DNS 查询的基本过程如下: 1. 查找浏览器缓存 浏览器会缓存 DNS 查询结果,不同的浏览器缓存时间会有所不同。如果浏览器存在缓存,那么 DNS 查询就到此为止。 2. 查找系统缓存 浏览器缓存中没有需要的数据时,就会往上找到操作系统缓存。我们也可以手动配置 host 文件,这样浏览器会优先使用我们的配置。 3. 查找路由器缓存 系统缓存中也没有需要的数据时,就会找到路由器。 4. 查找运营商 DNS 缓存 之后会向运营的服务器(网络配置中的 DNS 服务器地址)请求 DNS 数据。 5. 递归搜索 如果运营商服务器内也没有需要的数据时,就会开始消耗最大的递归搜索。 二、建立连接( TCP连接) http 协议是经过 TCP 来传输的,所以产生一个 http 请求就会有 TCP connect ,但是依赖于长连接,不会产生这个过程。 三、发送请求 从发送请求到开始响应的过程 。 request header :请求头信息, request body :请求体信息 四、接收数据 从响应开始到数据传输完成的过程。 response header :响应头信息。 response body :响应体信息。 五、解析 DOM 树 解析 HTML 结构 ,加载外部脚本和样式表文件,解析并执行脚本代码 ,构建与解析 HTML DOM 树