[ 前端与客户端容器 -2 | 青训营笔记 ]

81 阅读1分钟

客户端容器02笔记 - Chrome运行原理

Chrome运行原理-如何展示网页

  • 浏览器地址输入URL后发生了什么?

image-20230421150508784.png

Chrome运行原理-输入处理

1.用户Url框输入内容后,UI线程判断输入的是一个URL地址,还是一个query查询条件

2.如果是Url,直接请求站点资源

3.如果是query,将输入发送给搜索引擎

Chrome运行原理-开始导航

1.当用户敲下回车,UI线程通知网络线程发起一个网络请求,来获取站点内容

2.请求过程中,tab处于loading状态

image-20230421150642396.png

Chrome运行原理-读取响应

1.网络线程接收到HTTP响应后,先检查响应头的媒体类型(MIME Type)

2.如果响应主体是一个HTML文件,浏览器将内容交给渲染进程处理

3.如果拿到的是其他类型文件,比如Zip、exe等,则交给下载管理器处理

image-20230421150813085.png

Chrome运行原理-寻找渲染进程

1.网络线程做完所有检查后,会告知主进程数据数据已经准备完毕,主进程确认后为这个站点寻找一个渲染进程

2.主进程通过IPC消息告知渲染进程去处理本次导航

3.渲染进程开始接收数据并告知主进程自己已开始处理,导航结束,进入文档加载阶段

我们可以看到谷歌浏览器做了很多事情的,接下来就是要走渲染进程(上篇笔记有提到,随时有空闲都会走渲染进程的)。这里引发的思考是http的缓存问题,第一次访问某个站点时,发起http请求的时机。

----end----