火狐浏览器 Firefox 90.0 发布:速度更快,同时更加注重隐私

443 阅读5分钟

今天,Mozilla推出了Firefox 90 速度更快的同时,越来越注重隐私。

不仅增加了改进的打印到PDF的功能,HTTPS-only模式、帮助识别第三方应用程序引入的兼容性问题等,还几个大亮点改进:

  • 一个是新的 SmartBlock 功能(在确保网站登录仍然有效的情况下,加强保护跨网站跟踪)。
  • 还有一个新的 Windows后台更新程序,它允许一个小的后台程序在浏览器不运行时检查、下载和安装Firefox更新。

SmartBlock 2.0

  • SmartBlock 1.0可以防止使用Facebook认证来登录其他网站--例如Etsy。

  • SmartBlock 2.0今天首次与FireFox 90一起推出,当你点击 "继续使用Facebook "按钮时,会暂时解除对使用FB认证登录Etsy的正确脚本的封锁。

Mozilla内置的SmartBlock隐私功能的最新版本使用户更容易保持他们的跟踪保护设置,而不会破坏个别网站。更新后的版本似乎特别针对Facebook登录,它作为第三方认证和登录工具在网络上的使用越来越多。

火狐浏览器默认屏蔽了Facebook的脚本,因为Mozilla的合作伙伴Disconnect(正确地)在其已知的第三方跟踪器列表中识别了Facebook的域名。不幸的是,阻止Facebook脚本也意味着破坏第三方的Facebook登录--例如,在etsy.com上发现的Facebook登录功能。

有了SmartBlock 2.0,第三方网站上的Facebook脚本被禁用,就像以前一样,但是当用户点击 "继续使用Facebook "选项时,这种特定的、故意的用户与Facebook脚本的互动会导致SmartBlock 2.0解除屏蔽。解除封锁的时间正好允许Facebook认证登录成功--而用户不需要调低他们的跟踪保护设置。

一个更快的版本

image.png

  • Y轴表示 "不晚于此时间段完成的响应数量"--注意,在FF89中,响应时间小于50毫秒的桶明显更多。

image.png

  • 虽然很难发现,但我们可以在这张图中看到Javascript处理时间的改进--FF89在大多数低于17毫秒的桶中的事件比FF86多。

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

  • 在URL栏或文档编辑器(如Google Docs、Office 365)中输入信息
  • 打开网站菜单(如Google Docs中的文件菜单
  • 基于浏览器的视频游戏中的键盘控制

为了更具体地讨论性能目标和收益,Mozilla定义了三个级别的浏览器响应性:instantaneousperceptible lagjank ,前两者的最大延迟阈值为50毫秒和1,000毫秒。Mozilla继续指出,jank ,不仅意味着更长的延迟,而且整个网站--在最糟糕的情况下,浏览器本身的用户界面--每次都会超过一秒钟而无法使用。

令人印象深刻的是,Firefox 89在40%以上的时间里都能对事件作出instantaneous ,而Firefox 86只有30%。

瞬时响应

对于instantaneous 响应(瞬时响应),浏览器本身进行的计算并不是唯一的问题--无论浏览器产生新数据的速度有多快,在显示器显示之前,用户都无法真正感知到它。在典型的显示器刷新率为60Hz的情况下,这意味着大约每隔17毫秒就会显示一个新的帧,因此浏览器只有三个帧才能达到该响应级别的50毫秒目标。

在早期版本的火狐浏览器中,用户的输入发生在第0帧,而浏览器绘制新内容的 "画图 "过程发生在第1帧,因此组成(当新的paint编辑的内容实际交给操作系统并显示在用户的显示器上)不会早于第2帧。这就是我们可以在Mozilla为instantaneous 响应设定的50毫秒的时间限制内容纳的所有三个框架!

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

小而可察觉的滞后

大部分可感知的浏览器延迟是由花在JavaScript代码上的时间造成的--通常情况下,因为JavaScript引擎开发者花了更多的时间在合成基准上,而不是为真实世界的网络应用和框架进行优化。

直接针对常用的网站,Mozilla可以更好地调查Firefox的JavaScript引擎SpiderMonkey的性能问题。在真实世界的网站上进行实验以提高性能,而不是基准,这导致了数组迭代器的改进,从Firefox 89开始就提高了性能。

Mozilla预测 SpiderMonkey 将在2021年继续大幅改进,指出更好的对象结构架构和更快的for-of循环是两个例子。Ted Campbell、Iain Ireland、Steve Fink、Jan de Mooij和Denis Palmeiro为SpiderMonkey的性能做出了许多贡献,Mozilla对此表示感谢。

Jank

最蹩脚、名字最搞笑的当属 Mozilla 性能类别,jank ,在这个版本中也得到了一套改进。其中最明显的改进是,一个新的后台挂起报告器。部分归功于Florian Quèze和Doug Thayer的努力工作,Mozilla现在可以在浏览器性能下降时获得特殊的遥测信息,包括在Firefox父进程中经常看到的主线程挂起的堆栈痕迹。

这个新工具已经带来了洞察力和性能改进--例如,Mozilla发现,对于大多数使用触摸屏的Windows用户,无障碍功能被不必要地启用。无障碍功能对于需要它们的用户来说是非常重要的,但是当它们被激活时,对于浏览器来说是非常重要的额外工作。

部分归功于James Teh的协助,启用不必要的无障碍功能的用户数量明显减少,而挂起的报告数量也随之减少。