客户端容器02笔记 - Chrome运行原理
Chrome运行原理-如何展示网页
- 浏览器地址输入URL后发生了什么?
Chrome运行原理-输入处理
1.用户Url框输入内容后,UI线程判断输入的是一个URL地址,还是一个query查询条件
2.如果是Url,直接请求站点资源
3.如果是query,将输入发送给搜索引擎
Chrome运行原理-开始导航
1.当用户敲下回车,UI线程通知网络线程发起一个网络请求,来获取站点内容
2.请求过程中,tab处于loading状态
Chrome运行原理-读取响应
1.网络线程接收到HTTP响应后,先检查响应头的媒体类型(MIME Type)
2.如果响应主体是一个HTML文件,浏览器将内容交给渲染进程处理
3.如果拿到的是其他类型文件,比如Zip、exe等,则交给下载管理器处理
Chrome运行原理-寻找渲染进程
1.网络线程做完所有检查后,会告知主进程数据数据已经准备完毕,主进程确认后为这个站点寻找一个渲染进程
2.主进程通过IPC消息告知渲染进程去处理本次导航
3.渲染进程开始接收数据并告知主进程自己已开始处理,导航结束,进入文档加载阶段
我们可以看到谷歌浏览器做了很多事情的,接下来就是要走渲染进程(上篇笔记有提到,随时有空闲都会走渲染进程的)。这里引发的思考是http的缓存问题,第一次访问某个站点时,发起http请求的时机。
----end----