什么是RPC?为什么要使用RPC? 首先什么是RPC,RPC全称Remote Process Call,远程过程调用,现在几乎所有的公司都在使用RPC这种架构,诸如YOUTUBE使用的Thrift,Baidu的BaiduRPC等等,并且RPC也是分布式计算的基础.首先我们应该明白RPC是干什么的?顾名思义,远程过程调用,远程可以说明是一种c/s架构,过程调用可以说明调用的是一些方法. 为什么要使用RPC,其实这个问题可以从一个公司的发展历程来了解.最开始一个公司开发了一个产品,这个产品QPS并不…
在上篇文章中,我们介绍了渲染流水线中的 DOM 生成.样式计算和布局三个阶段,那今天我们接着讲解渲染流水线后面的阶段. 这里还是先简单回顾下上节前三个阶段的主要内容:在 HTML 页面内容被提交给渲染引擎之后,渲染引擎首先将 HTML 解析为浏览器可以理解的 DOM:然后根据 CSS 样式表,计算出 DOM 树所有节点的样式:接着又计算每个元素的几何坐标位置,并将这些信息保存在布局树中. 分层 现在我们有了布局树,而且每个元素的具体位置信息都计算出来了,那么接下来是不是就要开始着手绘制页面了?…
无论你是想要设计高性能 Web 应用,还是要优化现有的 Web 应用,你都需要了解浏览器中的网络流程.页面渲染过程,JavaScript 执行流程,以及 Web 安全理论,而这些功能是分散在浏览器的各个功能组件中的,比较多.比较散,要怎样学习才能掌握呢?通过浏览器的多进程架构的学习,你就可以把这些分散的知识点串起来,组成一张网,从而让自己能站在更高的维度去理解 Web 应用. 因此,学习浏览器的多进程架构是很有必要的.需要说明的是,在本专栏中,我所有的分析都是基于 Chrome 浏览器的.那么多…