在基本理解下面的内容后,再回过来看该图就会一目了然了
浏览器工作原理
当我们在浏览器中输入一个URL并发送请求时,主要会有如下几个处理步骤…
1. URL 解析与缓存检查
-
浏览器会先对 URL 进行解析,识别对应的协议(如 http、https)、域名、端口号和路径等信息
-
浏览器在发送网络请求前,会先检查一下本地缓存(如浏览器缓存、系统缓存等)中是否已有对应请求的资源的副本
浏览器缓存:
首先,浏览器会检查它的缓存中是否有这个域名的记录,因为之前访问过的网址的解析结果可能会被存储在浏览器缓存中
操作系统缓存:
如果浏览器缓存中没有找到,浏览器会询问操作系统,因为操作系统也可能有自己的DNS缓存
**ISP( Internet service provider)缓存:
如果以上都没有缓存记录,请求最终会发送到你的互联网服务提供商(ISP),它们通常会有更大范围的DNS缓存
-
如果本地缓存中存在对应的资源且在没有过期的情况下,直接从缓存中加载资源,来节省时间和带宽; 反之,如果本地缓存中不存在对应的资源或资源已过期时,就会发送对应资源的请求