导读 今天,Mozilla推出了Firefox 90。Mozilla 越来越注重隐私的浏览器的最新版本增加了改进的打印到 PDF 功能、仅 HTTPS 模式的个别例外...

今天,Mozilla推出了Firefox 90。Mozilla 越来越注重隐私的浏览器的最新版本增加了改进的打印到 PDF 功能、仅 HTTPS 模式的个别例外、一个关于:第三方页面以帮助识别第三方引入的兼容性问题 -方应用程序,以及一个新的 SmartBlock 功能,该功能可以在确保站点登录仍然有效的同时加强对跨站点跟踪的保护。

还有一个新的 Windows后台更新程序,它允许一个小的后台应用程序在浏览器未运行时检查、下载和安装 Firefox 更新。

智能块 2.0

最新版本的 Mozilla 内置 SmartBlock 隐私功能使用户可以更轻松地保持跟踪保护设置,而不会破坏单个网站。更新版本似乎特别针对 Facebook 登录,它越来越多地在网络上用作第三方身份验证和登录工具。

默认情况下,Firefox 会阻止 Facebook 脚本,因为 Mozilla 合作伙伴 Disconnect(正确)在其已知第三方跟踪器列表中识别了 Facebook 域。不幸的是,阻止 Facebook 脚本也意味着破坏第三方 Facebook 登录——例如,etsy.com 上的 Facebook 登录功能。

在 SmartBlock 2.0 中,Facebook 脚本在第三方站点上被禁用,就像以前一样——但是当用户单击“继续使用 Facebook”选项时,用户与 Facebook 脚本的特定的、故意的交互会导致 SmartBlock 2.0 解除对它的阻止。解锁及时发生以允许 Facebook 身份验证登录成功 - 无需用户调低其跟踪保护设置。

更快的火狐浏览器

根据 Mozilla 自己的测试,Mozilla 的内部指标显示 2021 年的速度有显着提高——上个月的 Firefox 89 比早期版本快 10-30% 。具体来说,Mozilla 团队提到了以下方面的改进:

基于浏览器的视频游戏中的键盘控制

为了讨论绩效目标和收益更具体,Mozilla的定义了三个级别的浏览器响应的:instantaneous,perceptible lag,和jank,与前两个50毫秒和1000毫秒最大延迟阈值。Mozilla 继续指出,jank 这不仅意味着更长的延迟,而且整个网站——在最坏的情况下,浏览器自己的 UI——变得无法使用超过一秒钟。

令人印象深刻的是,Firefox 89 在instantaneous 超过 40% 的时间内管理对事件的响应——而在 Firefox 86 中仅为 30%。

瞬间

对于instantaneous 响应,浏览器本身执行的计算并不是唯一的问题——无论浏览器生成新数据的速度有多快,用户在显示器显示之前都无法真正感知它。对于 60Hz 的典型显示器刷新率,这意味着大约每 17 毫秒显示一个新帧 - 浏览器仅需要三个帧来满足此响应级别的 50 毫秒目标。

在早期版本的 Firefox 中,用户输入将发生在第 0 帧,浏览器绘制新内容的“绘制”过程将发生在第 1 帧——离开合成(当新paint编辑的内容实际交给操作系统时,显示在用户的监视器上)发生的时间不早于第 2 帧。这就是我们可以在 Mozilla 为instantaneous响应设置的 50 毫秒时间限制内容纳的所有三个帧!

从 Firefox 89 开始,Markus Strange建议对 Firefox 的绘制管道进行更新, 显着改善了这种情况——现在,paint可以在用户输入发生的同一帧中进行,从而 compositing 可以提前一帧。这使得最大响应交互比以前快了大约 17 毫秒——这是自强instantaneous 窗口的三分之一。

小但可察觉的滞后

大多数可察觉的浏览器延迟是由花在 JavaScript 代码上的时间引起的——通常是因为 JavaScript 引擎开发人员花在玩综合基准测试上的时间多于为现实世界的 Web 应用程序和框架进行优化。

直接定位常用网站使 Mozilla 能够更好地调查 Firefox 的 JavaScript 引擎 SpiderMonkey 中的性能问题。尝试提高现实世界网站的性能而不是基准测试导致了改进的数组迭代器,这从 Firefox 89 开始提高了性能。

Mozilla 预测 SpiderMonkey 将在整个 2021 年继续进行重大改进,将更好的对象结构架构和更快的 for-of 循​​环作为两个示例。Ted Campbell、Iain Ireland、Steve Fink、Jan de Mooij 和 Denis Palmeiro 得到了 Mozilla 的感谢,他们为 SpiderMonkey 的性能做出了许多贡献。

扬克

最蹩脚但最搞笑的 Mozilla 性能类别,jank获得了自己的一系列改进——最值得注意的是,一个新的后台挂起报告器。部分归功于 Florian Quèze 和 Doug Thayer 的辛勤工作,当浏览器性能下降时,Mozilla 现在可以获得特殊的遥测信息——包括经常看到的主线程在 Firefox 父进程内挂起的堆栈跟踪。

新工具已经带来了洞察力和性能改进——例如,Mozilla 发现大多数使用触摸屏的 Windows 用户都不必要地启用了辅助功能。辅助功能对于需要它们的用户来说至关重要,但它们在浏览器处于活动状态时代表了大量的额外工作。

部分感谢James Teh 的帮助,启用了不必要的辅助功​​能的用户数量显着减少,挂起报告的数量也随之减少。