文章分类 -  浏览器工作原理与实践

摘要:前面我们介绍了渲染流水线中的 DOM 生成、样式计算和布局三个阶段,那今天我们接着讲解渲染流水线后面的阶段。 这里还是先简单回顾下上节前三个阶段的主要内容:在 HTML 页面内容被提交给渲染引擎之后,渲染引擎首先将 HTML 解析为浏览器可以理解的 DOM;然后根据 CSS 样式表,计算出 DOM 阅读全文
posted @ 2019-11-06 14:24 guopengju
摘要:我们介绍了导航相关的流程,那导航被提交后又会怎么样呢?就进入了渲染阶段。这个阶段很重要,了解其相关流程能让你“看透”页面是如何工作的,有了这些知识,你可以解决一系列相关的问题,比如能熟练使用开发者工具,因为能够理解开发者工具里面大部分项目的含义,能优化页面卡顿问题,使用 JavaScript 优化动 阅读全文
posted @ 2019-11-05 21:24 guopengju
摘要:“在浏览器里,从输入 URL 到页面展示,这中间发生了什么? ”这是一道经典的面试题,能比较全面地考察应聘者知识的掌握程度,其中涉及到了网络、操作系统、Web 等一系列的知识。 下图是“从输入 URL 到页面展示完整流程示意图”: 从输入 URL 到页面展示完整流程示意图 从图中可以看出,整个过程需 阅读全文
posted @ 2019-11-05 14:11 guopengju
摘要:前面介绍了 TCP 协议是如何保证数据完整传输的,相信你还记得,一个 TCP 连接过程包括了建立连接、传输数据和断开连接三个阶段。 而 HTTP 协议,正是建立在 TCP 连接基础之上的。HTTP 是一种允许浏览器向服务器获取资源的协议,是 Web 的基础,通常由浏览器发起请求,用来获取不同类型的文 阅读全文
posted @ 2019-08-23 02:20 guopengju
摘要:在衡量 Web 页面性能的时候有一个重要的指标叫“FP(First Paint)”,是指从页面加载到首次开始绘制的时长。这个指标直接影响了用户的跳出率,更快的页面响应意味着更多的 PV、更高的参与度,以及更高的转化率。那什么影响 FP 指标呢?其中一个重要的因素是网络加载速度。 要想优化 Web 页 阅读全文
posted @ 2019-08-14 01:33 guopengju
摘要:无论你是想要设计高性能 Web 应用,还是要优化现有的 Web 应用,你都需要了解浏览器中的网络流程、页面渲染过程,JavaScript 执行流程,以及 Web 安全理论,而这些功能是分散在浏览器的各个功能组件中的,比较多、比较散,要怎样学习才能掌握呢?通过浏览器的多进程架构的学习,你就可以把这些分 阅读全文
posted @ 2019-08-11 22:21 guopengju
摘要:理解浏览器是如何工作的,对我们做业务的技术选型、架构设计等都有非常重要的作用,让我们可以准确评估 Web 开发项目的可行性,站在更高维度审视页面,以及在快节奏的技术迭代中把握住问题的本质。 浏览器会涉及很多概念,不仅繁多而且琐碎,包括网络、渲染、安全,以及前端相关的大量概念。 系统学习浏览器,把网络 阅读全文
posted @ 2019-08-10 21:02 guopengju
摘要:对于应用,浏览器的地位一直很重要 1995 年,美国网景公司因“网景浏览器”的发布而快速崛起,之后网景试图开发一个依靠浏览器的网络操作系统。这引起了微软的注意和警惕,于是同年微软发布 Windows 95,并捆绑了 IE,大获成功,到 2002 年,微软就已经占据了浏览器市场 80% 的份额。 直到 阅读全文
posted @ 2019-08-09 21:39 guopengju