深度解析浏览器工作原理 - 浏览器渲染解析流程

在基本理解下面的内容后,再回过来看该图就会一目了然了

在这里插入图片描述

浏览器工作原理

当我们在浏览器中输入一个URL并发送请求时,主要会有如下几个处理步骤…

1. URL 解析与缓存检查

  • 浏览器会先对 URL 进行解析,识别对应的协议(如 http、https)、域名、端口号和路径等信息

  • 浏览器在发送网络请求前,会先检查一下本地缓存(如浏览器缓存、系统缓存等)中是否已有对应请求的资源的副本

    • 浏览器缓存: 首先,浏览器会检查它的缓存中是否有这个域名的记录,因为之前访问过的网址的解析结果可能会被存储在浏览器缓存中
    • 操作系统缓存: 如果浏览器缓存中没有找到,浏览器会询问操作系统,因为操作系统也可能有自己的DNS缓存
    • **ISP( Internet service provider)缓存: 如果以上都没有缓存记录,请求最终会发送到你的互联网服务提供商(ISP),它们通常会有更大范围的DNS缓存
  • 如果本地缓存中存在对应的资源且在没有过期的情况下,直接从缓存中加载资源,来节省时间和带宽; 反之,如果本地缓存中不存在对应的资源或资源已过期时,就会发送对应资源的请求

    • **🔺在浏览器中可以通过一个比较简单的办法来查看请求的资源是否是通过缓存中进行获取: ** 如果请求的资源是在本地缓存中加载的,通常对应请求的状态码为 "304 Not Modified",所以我们可以通过控制台中的 network 查看对应的状态码来进行查看
    • tip: 如果多次请求相同的资源没有使用缓存(状态码始终为 200)时,请先检查一下在 network 中是否禁用了缓存,如果打开了禁用缓存需要先取消掉禁用缓存项(如下图)
      • 在这里插入图片描述

2. DNS 域名解析:

  • 如果在本地缓存中没有找到所需资源,浏览器会进行DNS查询,以获取域名对应的IP地址
  • DNS查询就变成了一个递归查询过程,涉及到多个DNS服务器
    • 根域名服务器: 首先,你的DNS查询会被发送到根域名服务器(根服务器是最高级别的DNS服务器),负责重定向到管理顶级域名(如.com、.net等)的顶级域名服务器
    • 顶级域名服务器(TLD服务器): 根服务器会告诉你的ISP的DNS服务器去查询哪个顶级域名服务器来找到 .com、.net.org 等域的信息 → 这个服务器掌握所有 .com 等域名及其相应服务器的信息
    • 权威域名服务器(二级域名服务器):
      • 一旦你的DNS查询到达了
  • 20
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值