输入 URL 到页面渲染的整个流程
1.在输入框中输入url 即输入域名。
2.输入的url域名通过dns解析成ip地址
- 首先在本地缓存中查询IP
- 没有的话会去系统配置的DNS服务器中查询
- 如果还没得话,会直接去DNS根服务器查询,这一步查询会找出一级域名的服务器
- 然后去该服务器查询二级域名
- 接下来三级域名的查询其实是我们配置的,然后还可以给别的三级域名配置一个 IP
- 接收到ip地址后,会先把ip和域名对应关系保存到本地dns缓存,以便下次方便访问
3.获取IP后进行tcp连接(三次握手)
4.建立连接后从服务器获取HTML文件,浏览器开始解析文件
5.浏览器进行页面渲染
- 先会根据HTML构建DOM树
- 有CSS的话会构建CSSOM树
- 有script的话,会判断是否存在async或者defer,前者会并行进行下载并执行JS,后者会先下载文件,然后等待 HTML解析完成后顺序执行
- CSSOM树和DOM树构建完成后会开始生成Render树
- 在生成 Render 树的过程中,浏览器就开始调用GPU绘制