【.com快速翻译】Mozilla的野心不容忽视。作为网页渲染引擎产品,Servo专为现代多核驱动的网页而设计。Rust是一种令人印象深刻的新编程语言,在Mozilla团队开发Servo项目期间作为新的子产品出现。然而,许多人并不清楚该项目的细节——特别是Mozilla试图加速什么以及如何加速。接下来介绍Firefox引擎下最重要的四大变化。这些作为Quantum项目中的子项目捆绑在一起。让我们来看看每个子项目对Web开发人员和普通用户意味着什么。一、伺服什么是伺服?它是MozillaFirefox浏览器的下一代布局引擎,使用Rust语言开发。为什么重要:伺服是最重要的发动机工具,这可以从三个方面来解释。***,它旨在利用多核CPU技术实现更快的页面内容渲染;这样,即使布局复杂的网页也能顺利呈现。其次,它在不牺牲速度的情况下使用Rust语言来确保内存安全。(没有人喜欢不稳定的浏览器,但也没有人愿意使用速度慢的浏览器)。第三,由于Rust高度现代化的包管理和构建系统,该引擎旨在简化构建和维护Firefox关键核心的过程。因此,那些想要为未来版本的Firefox做出贡献,或者利用这些组件的人,可能需要使用Rust来开始提速。有了Rust的支持社区和对易用性的日益重视,这个项目应该是不可能的。2.WebRender/QuantumRenderer什么是WebRender?它是Servo的GPU优化渲染组件。为什么如此重要?现代设备中的所有硬件,包括最新的智能手机,通常都配备了GPU芯片,旨在减轻渲染3D和2D图像的繁重工作。如果实际渲染组件仍然是一个瓶颈(即WebRender负责的部分任务),那么Servo的多核Web布局引擎将不会提供太多真实世界的速度。从表面上看,WebRende旨在与Servo配合使用。也就是说,它可以用于任何需要后端渲染的项目,就像Servo被重新用作包括Firefox在内的项目的Web引擎一样。3.量子合成器什么是量子合成器?该工具的主要目的是将GPU合成工作与主要系统渲染过程分开。为什么重要:根据官方Mozilla消息来源,许多版本的Firefox崩溃是由于与图形驱动程序的交互不正确。通过将与GPU交互的代码重新定位到它自己的进程中,可以在不关闭整个浏览器的情况下包含这些崩溃。这也是并行化操作的另一种方式,因为处理合成的单个进程可以在单个CPU内核(如果可用的话)上运行。巧合的是,苹果的Chrome浏览器也采用了类似的方法,所以像WebGL这样高难度的问题只会在当前网页触发警告信息,而不会导致整个浏览器崩溃。目前,该工具只负责在网页上合成组件,并没有承担加速视频播放(一次一个任务)的艰巨任务。4.量子DOM什么是量子DOM?它是一个支持加载和读取网页内容并通过对网页内容进行智能处理使其尽可能不拥挤的软件项目。为什么如此重要?大多数Web开发人员都非常清楚,即使是增量更改(横幅广告加载、在线图像加载等)也会降低网页的响应速度,从而影响页面内容的呈现。一个幼稚的解决方案是使用多核技术将这些操作并行化,但这会导致大量系统内存占用。正如BillMcCloskey在他的博客中解释的那样,QuantumDOM尝试通过用户空间线程而不是进程来协作安排页面DOM更改;这也最终导致了在网页自己的线程上运行单个框架的可能性。如果处理得当,这可以实现更复杂的页面布局,同时减少性能瓶颈。上述方案中最难的部分是找出哪些任务可以最有效地组合在一起。在伺服成为标准设备之前,这个项目可能需要很长时间才能完善。原标题:Firefox即将到来的4大变化,作者:SerdarYegulalp
