了解延迟
查看更多学习笔记:GitHub:LoveEmiliaForever
MDN中文官网
CDN
CDN (内容分发网络) 指的是一组分布在各个地区的服务器
这些服务器存储着数据的副本,因此服务器可以根据哪些服务器与用户距离最近,来满足数据的请求
CDNs 被广泛用于传输 stylesheets 和 JavaScript 等静态资源,像 Bootstrap,Jquery 等
- 通过 CDN 向用户分发传输相关库的静态资源文件,可以降低我们自身服务器的请求压力。
- 大多数 CDN 在全球都有服务器,所以 CDNs 上的服务器在地理位置上可能比你自己的服务器更接近你的用户。地理距离会按比例影响延迟。
- CDNs 已经配置了恰当的缓存设置。使用 CDN 节省了在你的服务器中对静态资源文件的配置。
什么是延迟
延迟通常被认为是从用户发出请求到响应返回给该用户所花费的时间
在第一个请求中,对于前 14Kb 字节,延迟较长,与服务器的连接建立后,请求的延迟会更短
延迟可以通过一种方式来衡量,例如发送资源请求所需的时间,或者从浏览器请求资源到所请求的资源到达浏览器的整个往返时间
网络节流
要模拟低带宽网络的延迟,您可以使用开发人员工具并切换到较低端的网络连接
在开发者工具中的网络表下,可以将限流选项切换为2G、3G等
网络时序
可以在开发者工具中看到网络时序图
- 阻塞:请求在队列中等待网络连接时,它被视为阻塞
- DNS解析:进行DNS查找所花费的时间
- 连接:完成TCP 握手所需的时间
- TLS握手:建立安全连接所需的时间
- 发送:将 HTTP 请求发送到服务器所花费的时间
- 等待:服务器完成响应所花费的时间
- 接收:下载资产所需的时间
等待*:服务器完成响应所花费的时间 - 接收:下载资产所需的时间