进入量子时代——Firefox 如何重获速度以及未来将如何变得更快

人们已经注意到 Firefox 速度又回来了。

Tweet from Sara Soueidan about Firefox Nightly being fast

在过去七个月里,我们一直在快速替换引擎的主要部分,将 Rust 和 Servo 的部分引入 Firefox。此外,我们还成立了一个浏览器性能突击队,对代码库进行全面搜索,寻找明显和不明显的性能问题。

我们称之为量子项目,重生后的 Firefox Quantum 的第一个通用版本将于明天发布。

orthographic drawing of jet engine

但这并不意味着我们的工作已经完成。也不意味着今天的 Firefox 已经达到了它所能达到的速度和响应速度。

所以,让我们看看 Firefox 如何重获速度以及未来将如何变得更快。

通过粗粒度并行性打下基础

为了变得更快,我们需要利用过去 10 年硬件发生的变化。

我们并不是第一个这样做的人。Chrome 在首次推出时就比 Firefox 更快、更具响应性。其中一个原因是 Chrome 工程师看到了硬件正在发生变化,他们开始更好地利用这些新硬件。

Chrome looking to the future of coarse-grained parallelism

一种新的 CPU 样式开始流行起来。这些 CPU 具有多个内核,这意味着它们可以独立地执行任务,但同时也可以并行执行。

但这可能很棘手。在并行的情况下,您可能会引入难以发现和难以调试的细微错误。例如,如果两个内核需要将内存中的同一个数字加 1,如果您没有特别小心,其中一个可能会覆盖另一个。

diagram showing data race between two cores

避免此类错误的一个非常直接的方法是确保您正在处理的两个东西不必共享内存——将您的程序拆分为无需过多合作的相当大的任务。这就是粗粒度并行性。

在浏览器中,很容易找到这些粗粒度。将每个标签页视为单独的工作部分。网页周围也有东西——浏览器 chrome——这些可以单独处理。

这样,页面可以以自己的速度同时工作,而不会相互阻塞。如果您在后台标签页中有一个长时间运行的脚本,它不会阻塞前台标签页中的工作。

这是 Chrome 工程师预见到的机会。我们也看到了这一点,但我们走的路更坎坷。由于我们有一个现有的代码库,我们需要规划如何拆分该代码库以利用多个内核。

Firefox looking to coarse-parallelism future

这花了一些时间,但我们最终实现了。通过 Electrolysis 项目,我们最终将多进程设置为所有用户的默认设置。Quantum 通过其他一些项目使我们对粗粒度并行性的利用更加出色。

timeline for coarse grained parallelism, with Electrolysis and Quantum Compositor before initial Quantum release and Quantum DOM after

电解

电解为量子项目奠定了基础。它引入了与 Chrome 引入的类似的多进程架构。由于这是一个很大的变化,我们在 2016 年开始对一小部分用户进行测试,然后在 2017 年年中将其推广到所有 Firefox 用户,从而逐步引入它。

量子合成器

GPU process

量子合成器将合成器移到了自己的进程中。这里最大的优势是使 Firefox 更加稳定。拥有一个单独的进程意味着如果图形驱动程序崩溃,它不会使整个 Firefox 崩溃。但拥有这个单独的进程也使 Firefox 更加响应。

量子 DOM

即使您在内核之间拆分内容窗口,并为每个内容窗口提供一个单独的主线程,主线程仍然需要完成很多任务。其中一些比其他任务更重要。例如,响应按键比运行垃圾回收更重要。量子 DOM 为我们提供了一种优先处理这些任务的方法。这使得 Firefox 更具响应性。大部分工作已经完成,但我们仍然计划通过名为抢占式调度的方式进一步推进。

通过细粒度并行性最大限度地利用硬件

但是,当我们展望未来时,我们需要比粗粒度并行性走得更远。

Firefox looking towards the future of fine-grained parallelism

粗粒度并行性可以更好地利用硬件……但它无法最大限度地利用硬件。当您在不同的内核之间拆分这些网页时,其中一些网页没有工作要做。因此这些内核将处于空闲状态。同时,在一个新内核上启动一个新页面需要的时间与 CPU 为单内核时一样长。

Splitting content windows across different cores

能够使用所有这些内核来处理正在加载的新页面会很棒。然后您就可以更快地完成这些工作。

但是,在粗粒度并行性中,您无法从一个内核中分离出任何工作发送到其他内核。工作之间没有边界。

使用细粒度并行性,您可以将这个更大的任务分解成更小的单元,然后将其发送到不同的内核。例如,如果您有类似 Pinterest 网站的东西,您可以将不同的固定项目拆分,然后发送到不同的内核进行处理。

Splitting work across cores fine-grained

这不仅有助于解决粗粒度并行性带来的延迟问题。它还有助于提高纯粹的速度。页面加载速度更快,因为工作分布在所有内核之间。随着您添加更多内核,您的页面加载速度会随着内核数量的增加而不断加快。

所以我们看到这是未来,但如何实现还不完全清楚。因为要使这种细粒度并行性变快,您通常需要在内核之间共享内存。但这样会产生 我之前提到的那些数据竞争

但我们知道浏览器必须进行这种转变,所以我们开始投资研究。我们创建了一种没有这些数据竞争的语言——Rust。然后我们创建了一个浏览器引擎——Servo——它充分利用了这种细粒度并行性。通过此,我们证明了这可以实现,并且您实际上可以在速度更快的情况下减少错误。

timeline of fine grained parallelism, with Quantum CSS before initial Qunatum release, and Quantum Render and possibly more after

量子 CSS(又名 Stylo)

Cores that have finished their work stealing from the core with more work

使用 Stylo,CSS 样式计算工作完全并行地分布在所有 CPU 内核之间。Stylo 使用一种称为工作窃取的技术来有效地在内核之间拆分工作,以便所有内核都能保持忙碌。通过这样做,您将获得线性加速。您将 CSS 样式计算所需的时间除以内核数量。

量子渲染(采用 WebRender)

Diagram of the 4 different threads, with a RenderBackend thread between the main thread and compositor thread. The RenderBackend thread translates the display list into batched draw calls

硬件的另一个高度并行化的部分是 GPU。它有数百个或数千个内核。但是,您需要进行大量规划才能确保这些内核尽可能保持忙碌。这就是 WebRender 的作用

WebRender 将在 2018 年发布,并将利用现代 GPU。同时,我们也从另一个角度解决了这个问题。高级层项目修改了 Firefox 现有的层系统以支持批量渲染。它通过优化 Firefox 当前的 GPU 使用模式,为我们带来了立竿见影的效果。

???

我们认为渲染管道的其他部分也可以从这种细粒度并行性中受益。在接下来的几个月里,我们将仔细研究在哪里还可以使用这些技术。

确保我们不断变得更快,永远不会变慢

除了我们知道必须进行的这些重大架构变更之外,许多性能错误也偷偷地潜入了代码库,而我们却毫不知情。

所以我们创建了量子的另一个部分来解决这个问题……基本上是一个浏览器性能突击队,负责寻找这些问题并动员团队进行修复。

timeline of Quantum Flow, with an upward sloping arc

量子流

量子流团队就是这个突击队。他们不是专注于特定子系统的整体性能,而是专注于一些非常具体、重要的用例——例如加载您的社交媒体 feed——并跨团队合作,找出为什么它在 Firefox 中的响应速度不如其他浏览器。

量子流为我们带来了许多重大的性能提升。在此过程中,我们还开发了工具和流程,使查找和跟踪这些类型的问题变得更加容易。

那么量子流现在会怎样呢?

我们正在将这个非常成功的过程——一次识别和专注于一个关键用例——转变为我们工作流程的常规部分。为此,我们正在改进我们的工具,以便我们不再需要一支专家突击队来搜索问题,而是可以赋予更多工程师在整个组织中找到问题的能力。

但这项方法有一个问题。当我们优化一个用例时,可能会使另一个用例退化。为了防止这种情况发生,我们正在添加许多新的跟踪功能,包括改进 CI 自动化运行性能测试、跟踪用户体验的遥测以及错误内部的回归管理。有了这些,我们预计 Firefox Quantum 将会不断改进。

明天仅仅是个开始

明天对我们 Mozilla 来说是个重要日子。过去一年我们一直在努力让 Firefox 更快,但这仅仅是个开始。

在未来的一年里,我们将不断推出新的性能改进,我们期待与您分享!

尝试 Firefox Quantum 正式版 或者 开发者版,以确保您在更新发布时第一时间获取最新版本。

关于 Lin Clark

Lin 在 Mozilla 的高级开发部门工作,专注于 Rust 和 WebAssembly。

更多 Lin Clark 的文章...


82 条评论

  1. bornjre

    我在两周前使用了开发者版,很喜欢 UI,但一段时间后我的笔记本风扇疯狂运转,当时我只开了两个标签页(一个是 YouTube),也没做什么别的。这个问题现在应该解决了吧,期待新版 Firefox :D

    2017 年 11 月 13 日 下午 08:44

    1. David

      并行的目的是充分利用 CPU 的性能。如果您不想这样,可以尝试在一般选项底部降低内容进程限制。

      2017 年 11 月 13 日 下午 19:09

    2. Julian

      您应该安装 h264ify 扩展。这几乎可以肯定能解决使用 YouTube 时 CPU 使用率过高的问题。

      https://addons.mozilla.org/en-US/firefox/addon/h264ify/

      2017 年 11 月 14 日 上午 04:38

    3. anon

      Quantum 是与普通 Firefox 分开的独立产品吗?还是说我应该在常规更新中看到这些变化?

      2017 年 11 月 14 日 上午 07:05

      1. Lin Clark

        您应该在常规更新中看到这些变化。

        2017 年 11 月 15 日 上午 10:40

  2. Zorg

    干得漂亮。期待看到更详细的 2018 年路线图。

    我也期待着 Mozilla 不再害怕让 Firefox for Android 借鉴 Firefox 的产品质量和认可的那一天。

    2017 年 11 月 13 日 下午 08:55

  3. Marty

    感谢您的奉献和努力。我曾经是 Firefox 的忠实用户,因为它的可定制性,但后来为了速度,我转向了 Chrome 和 Slimjet。现在我准备回归 Firefox 家族,正如您承诺的那样,我将利用这个新的速度之王。祝好!

    2017 年 11 月 13 日 下午 08:59

    1. John

      好吧,这就是现在的问题所在。人们没有原则,他们去哪里更“温暖”... 你坚持使用一个尊重你隐私的免费浏览器,或者为了点速度,你就把一切都毁了。你认为保卫一个国家/城市/村庄很容易吗?为什么不邀请敌人,用一面闪闪发光的镜子或其他东西来卖掉你的城镇呢?

      你给 Mozilla 捐了多少钱?
      因为像你这样的人,隐私已经死了。抱歉,这就是真相,很残酷。

      2017 年 11 月 13 日 下午 17:52

      1. Adam

        这升级得真快

        2017 年 11 月 14 日 上午 02:07

      2. Zoidberg

        这确实如此。现在,由于那些只关心“速度”的人,我们最终得到的是一个 Chrome 克隆,几乎只有它曾经拥有的优秀扩展的一小部分... Cookie Manager+?没了。Tamper Data?没了。RefControl?没了。TabGroups Manager?没了。YesScript?没了。Small Tabs?没了。我剩下的只有 Ghostery、uBlock 和 HTTPS Everywhere。哇,太棒了!

        我记得曾经 Firefox 因为它的扩展而很有趣。现在它只是“带隐私的 Chrome”。聊胜于无,但比以前差很多,而且因为像 Marty 这样的人,没有其他选择。

        2017 年 11 月 14 日 上午 02:35

        1. Heinzel

          从一开始,我就是一个真正的 Firefox 信徒和守护者。GUI 非常出色,您可以根据自己的喜好修改每个设置。当 Google 认为是时候从 Chrome 中删除后退键功能时(他们确实这么做了),你就会很惨(除了少数几个插件)。

          但后来,使用 Firefox 变得无法忍受,你除了寻找替代方案别无选择。

          像我一样有超过 10000 个书签吗?如果您不小心将鼠标悬停在“书签”上,Firefox 会完全卡住 30 秒,因为它试图一次加载所有书签,即使它只能显示一小部分。

          有超过 500 个标签页打开吗?在 Firefox 上不可能。在我打开 20 个视频标签页后,Firefox 变得非常慢。诚然,当我打开 500 个标签页时,Chrome 会占用 32GB 的内存,但我根据自己的需要调整系统配置。

          转换并不容易,我忍受了这些问题多年。多次尝试切换到 Chrome,但它就是很烂。我讨厌 Chrome 的界面和它的标签页。我不得不严重依赖插件,并且在对 Firefox 的性能感到厌倦后,我适应了它。我会看看 Quantum,但我感觉书签错误还没有修复。

          2017 年 11 月 14 日 上午 06:40

        2. Will

          你说的是胡说八道。我曾经狂热地使用 Firefox,直到一个接一个的版本越来越慢,直到它在我的机器上变得完全无法使用。在那时,我尝试了 Chrome,并高兴地发现它,令人震惊的是,可以使用。它仍然可以使用(并且在开发工具方面处于领先地位),因此我继续使用它。这绝不是因为 Chrome 更快、更闪亮,而是因为 Firefox 对皮肤和臃肿 UI 的痴迷完全偏离了正轨。

          Quantum 引起了我的兴趣,所以我现在愿意再给 Firefox 一次机会。如果这侵犯了您的专属俱乐部,请见谅。随着时间的推移,我相信插件会回来,他们只需要确保它们不会使浏览器膨胀,并让它重新回到它在过去很多年里一直处于的下降趋势。

          2017 年 11 月 14 日 上午 08:28

        3. Beardface

          我们必须关注速度的原因是,现代网络充斥着令人作呕、臃肿的 JavaScript、CSS 和重定向。即使现在,使用任何浏览器,网络都几乎无法使用。
          Opera 不再是 3 MB,因为它必须变得更安全、更快,并且网络使用的标准技术已经变得复杂得多。所有这些都需要更多的代码。

          TL;DR:问题是网络,而不是浏览器供应商。

          2017 年 11 月 14 日 上午 09:58

        4. Derrick

          呃... 哥们,插件最终会更新并回来。这就是技术的发展方式,尤其是开源技术。

          事物会更新。依赖于经过改变的特定基础的过时内容将无法正常运行。开发者必须对此进行调整。

          新的 Firefox 如果因为速度吸引了更多用户,那么很可能会有更多插件为它而生。

          2017 年 11 月 14 日 上午 11:08

        5. Tim

          不要假装是“像 Marty 这样的人”。这是人类的普遍行为。即使你能改变 60 亿左右有与 Marty 相同本能的人类,当你完成时,他们都会死去,而会有 120 亿新的人类再次拥有相同的行为。

          <3

          2017 年 11 月 14 日 下午 16:42

        6. Ray

          而且它不再漂亮了。我想念可爱的按钮和界面。请不要用新的按钮。

          2017 年 11 月 14 日 下午 18:28

        7. Didunaffin

          这是开发人员的工作,他们需要调整这些扩展。

          还有一个建议,不要使用 Ghostery。

          2017 年 11 月 14 日 下午 21:51

        8. devx

          而像你这样的人,他们阻止其他人尝试新事物,推动世界向前发展。Chromium 项目是近年来发生在科技界最好的事情之一,它为许多酷炫的技术(V8、Node.js、Electron 等)铺平了道路,也是发生在 Mozilla/Firefox 的最好的事情。竞争总是推动世界向前发展,而不是相反。

          2017 年 11 月 15 日 上午 00:02

      3. cronvel

        … 更不用说 Firefox 几乎总是比 Chrome 快。

        Chrome 拥有更快的 JavaScript 引擎,但总体性能并不理想,除了基准测试和演示/游戏。对于常规浏览(你 95% 的时间都在做,如果不是 99% 的时间),Firefox 获胜,尤其是在你打开很多标签页的时候。还有 Chrome 的巨大内存消耗呢?

        与其相信基准测试,人们应该相信自己的经验...

        2017 年 11 月 14 日 上午 09:40

  4. KSS

    嗨 Lin,文章很棒。感谢您的插图。我对此处技术的内部运作只有间接兴趣,如果没有这些插图,我不会读完整篇文章。

    2017 年 11 月 13 日 下午 09:24

  5. Ryan S.

    向所有参与 Quantum 项目的人致敬!Lin,写得很好。

    2017 年 11 月 13 日 下午 10:38

  6. Jad

    你刚刚赢回了我的支持,我希望我能将我所有的数据从 Vivaldi 导入,不会出现任何问题。

    2017 年 11 月 13 日 下午 11:09

    1. Omar

      我真的很喜欢 Vivaldi 的方法,但“用 Web 为 Web 构建”的方式在我的低端机器上导致了故障,甚至比 Chrome 占用了更多的内存。
      如果他们能放弃 Chromium,转向 Servo 和 Rust,那将会非常棒,这样我们就可以将可定制性与性能结合起来。
      我认为 Firefox 应该更加重视自定义性和新功能

      2017 年 11 月 14 日 下午 09:57

  7. Daniel

    很高兴看到 Firefox 再次闪耀。
    恭喜所有开发者!

    2017 年 11 月 13 日 下午 11:41

  8. Raymond Ramirez

    Firefox 刚问世的时候,我是最早的使用者之一。升级到 Windows 10 后,我就不再使用 Firefox 了。所以我会在它发布后安装并尝试最新版本。

    2017 年 11 月 13 日 下午 11:47

  9. a

    可爱的图画,但基准测试在哪里?

    2017 年 11 月 13 日 下午 12:19

    1. Jon

      他们有一个网站,上面有自动测试结果,会定期更新:https://arewefastyet.com/

      2017 年 11 月 13 日 下午 15:25

  10. James

    太棒了!感谢你们的辛勤工作,让大家更容易摆脱自己的数据被出售的困境 :) 我一直使用 Chrome,感觉上是必须的,现在我很兴奋能够回到我的初恋

    2017 年 11 月 13 日 下午 12:47

  11. QuantumBreak

    性能提升 - 做得好。但是,那些困扰 Firefox 几年之久的次要问题怎么办?其中一个问题是无法删除 IndexedDB - 一旦媒体开始关注该主题,你们就可以立即解决该问题。
    另一个问题是书签搜索中的父文件夹(又称路径)。这个问题已经存在于 Firefox 中十多年了 - 而 Quantum 却杀死了唯一可行的解决方法(第三方扩展 Go Parent Folder 和 Show Parent Folder)

    2017 年 11 月 13 日 下午 13:19

  12. Garrett Jewell

    恭喜。这是一项重大成就。我期待加入 Beta 频道。

    2017 年 11 月 13 日 下午 13:27

  13. Mees Boeijen

    恭喜各位!自从 Firefox 开发者版的 Quantum 版本发布以来,我使用 Firefox 的时间比以往任何时候都多。

    2017 年 11 月 13 日 下午 13:45

  14. Jon v

    很有意思的是,看看在 GPU 上渲染页面从每瓦特性能的角度来看是否比在多核 CPU 上渲染更有效率,以及是否与供应商有关(Nvidia 与 AMD 与 Intel 与移动 GPU,Mac 与 PC 与 Linux 与 iOS 与 Android)。当 GPU 不断地启动和停止时,它对笔记本电脑或移动设备的电池寿命有什么影响?

    2017 年 11 月 13 日 下午 14:14

  15. Frans Faase

    大约两周前,我在输入文本时遇到了问题。字符只会在延迟一段时间后才出现,而且经常会乱序。特别是空格会被移到最后。大写锁定状态也会保留,导致新句子的开头出现多个大写字母。即使是输入一个简单的密码也成了问题。关闭并重新打开 Firefox 似乎可以解决问题。我只打开了大约五到七个标签。

    2017 年 11 月 13 日 下午 14:42

  16. Juraj

    我喜欢它!
    我的 Group Speed Dial 扩展现在更快了!
    https://addons.mozilla.org/en-US/android/addon/groupspeeddial/

    2017 年 11 月 13 日 下午 15:05

  17. Harry

    我一直很喜欢 FF 的理念和开源原则。一直使用 Chrome 的开发者工具(现在也包含在 Firefox 中,太棒了!),期待正式发布。
    你们做得很好

    2017 年 11 月 13 日 下午 15:21

  18. Dr. E.J. Wilson

    我对升级到 56 版后的加速印象深刻,我真的很期待 57 版。感谢你们的努力!

    2017 年 11 月 13 日 下午 15:25

  19. Abed

    几周前我下载了开发者版本,从此再也没有回头。对所有参与的人来说,干得漂亮!

    2017 年 11 月 13 日 下午 15:59

  20. Mark

    这将如何影响 Waterfox???
    64 位平台浏览器也会更新吗?希望如此!
    喜欢 Waterfox 浏览器!

    2017 年 11 月 13 日 下午 17:06

  21. Steven Greenberg

    我在 1980 年代做过一些关于电子电路模拟器的并行化工作。看到这些年来技术取得的进步,真是太好了 - 硬件和软件都得到了发展。

    2017 年 11 月 13 日 下午 17:14

  22. Sean

    速度现在可能是 FF 的朋友,这很棒 - 我刚刚测试了一下,确实比 Chrome 略快。但是,图像饱和度很糟糕。我不是开发者,但出于这个原因,目前我将继续使用 Chrome。

    2017 年 11 月 13 日 下午 17:39

  23. Eric

    一些提高速度的低成本方案

    优先加载正在访问的页面所托管的内容。Google 永远不会这样做,因为那样会影响他们的广告收入。

    相关的想法是,尽可能降低已知广告服务的优先级,最好是原生广告屏蔽。

    使用页面本身的线索来找出用户为什么访问该页面,并将该内容提升到最高优先级。在视频网站上,优先加载视频内容;在照片网站上,优先加载图像内容……等等。

    我认为这些更像是对最终用户来说的感知速度提升,而不是实际的速度提升。感知力是强大的。

    2017 年 11 月 13 日 下午 17:40

  24. jake

    所以 Firefox 可以继续成为第一名,太棒了!我很高兴你们做了点什么,虽然已经很久了,但确实需要了。

    只有一件事。
    请不要让 Firefox 像 Chrome 一样变成 RAM 吞噬怪兽。

    2017 年 11 月 13 日 下午 18:25

  25. Milt Reynolds

    Lin,这篇文章写得真棒!我从 How-to-Geek 的链接点进来的,但我以为自己不会懂多少,因为我离开发者还差得远。但我居然看懂了!太棒了!感谢这篇文章。我打算回到 Firefox 并试用一下。

    2017 年 11 月 13 日 下午 19:08

  26. Nope nope nope

    我卸载了 Firefox 并切换到 Waterfox,因为 Firefox Quantum 会导致我 60% 的扩展失效。

    扩展和浏览器的可扩展性是 Firefox 存在的理由。你毁了它,你就毁了 Firefox。

    2017 年 11 月 13 日 下午 20:14

  27. Jim@jimmy.net

    我认为这并不能准确地反映出 e10s 达到可测试状态需要多长时间。
    我第一次看到 *真正* 的 e10s 是在 FirefoxOS 中,当时……Chris Jones?我认为?还有 Guillaume?添加了实际的进程分离(这在之前已经由几个人做了很多基础工作)。当时我认为它会起飞,感觉它像一块基石,尽管实际上,它是在后来才真正起飞的。
    一个基本的沙箱随后出现,不久之后,桌面版的 Linux 版 Firefox 就可以使用它,前提是您重新编译它,因为它使用了与 FirefoxOS 相同的代码。
    这大约是在 2014 年(我可能记错了,是 2013 年吗?我想 hg 有日期),而且在 2011 年就已经在进行工作了。

    我相信 Mozilla 从 2016 年开始投入更多资源到这项工作中(这很棒)。许多人做了很多工作,我很高兴这个新版本的速度这么快!

    2017 年 11 月 13 日 下午 20:29

  28. Clinton

    当我的几乎所有插件和扩展都无法兼容时,还有什么意义呢?几乎没用了。在这方面,Mozilla 继续自掘坟墓。以前是我的日常浏览器,现在……再也不用了。厌倦了 Mozilla 每隔几个月就改变规则。

    2017 年 11 月 13 日 下午 20:29

  29. bob

    确实很快!

    2017 年 11 月 13 日 下午 20:30

  30. matt

    干得好。

    不知道这是否符合目前的优化……功耗?

    2017 年 11 月 13 日 下午 20:54

  31. Quantum DOM 已经引入 Firefox 57 了吗?

    Quantum DOM 已经引入 Firefox 57 了吗?
    这是我在 ghacks 上找到的
    >不过,还有更多内容。Quantum 包含 5 个部分,其中 4 个是主要部分。在这 4 个部分中,只有两个包含在 Firefox 57 中。一个大型的部分,WebRender,计划在 59 版中发布。另一个缺失的部分是 Quantum DOM,我对它了解不多,无法判断它在性能、流畅度和响应性方面有多大影响。

    2017 年 11 月 13 日 下午 20:57

  32. Konstantin

    我也很想看到以下数据的图表
    – 切换到 FF 57 的用户数量
    – 尽可能长时间停留在不同 ESR 版本的人数(因为 FF 57 中 XUL 支持被撤销)
    – 完全停止使用 FF 的用户数量

    根据
    https://arewewebextensionsyet.com/
    总体移植情况相当糟糕(部分原因是 WebExtensions API 对于一个稳定的平台来说变化过于频繁)。

    让我们看看数字。

    2017 年 11 月 13 日 下午 21:10

    1. dsfsdfdsf

      而且这个列表远未完善……

      https://docs.google.com/spreadsheets/d/1TFcEXMcKrwoIAECIVyBU0GPoSmRqZ7A0VBvqeKYVSww/edit#gid=0

      2017 年 11 月 14 日 下午 10:24

  33. Jason

    我没有发现它更快了,如果我在晚上将东西留在固定标签中运行,它仍然会像疯了一样泄漏内存。

    2017 年 11 月 13 日 下午 21:28

  34. Joe Contreras

    Firefox 团队干得好!
    这确实是一项艰巨的任务,因为以如此创新的方式利用新硬件的力量,至少可以说极具挑战性!我迫不及待地想看到我的 GPU 全速运转!

    2017 年 11 月 13 日 下午 10:09

  35. Ken Grady

    我多年来一直在使用 Firefox,并且在我的 Mac 上也安装了它,这个新版本也适用于 Mac 吗?

    2017 年 11 月 13 日 下午 10:22

    1. Grzegorz

      是的。适用于 Mac、Linux、BSD、Windows 等。

      但 Android 和 iOS 尚未获得加速功能。Android 应该会在以后获得,而 iOS 上的 Firefox 必须使用 Safari 的底层功能,因此其速度始终与 Safari 一样快或慢。

      2017 年 11 月 14 日 上午 04:36

  36. Wayne

    我离开 Mozilla 已经很多年了,我从 Netscape(从 3.0 Gold 版本开始,所有版本)开始,一直使用到 Firefox 的某个版本,大约六年前。我对它很感兴趣,但也持谨慎态度。明天我会下载稳定版,看看它会带我去哪里。顺便说一句,你的文章写得很好。

    2017 年 11 月 13 日 下午 10:38

  37. Chris

    祝贺 Mozilla!在我们数字机构,我们所有人都在使用 Firefox,并且非常喜欢它!有史以来最棒的浏览器,请继续努力!!!!!!!!

    2017 年 11 月 13 日 下午 11:06

  38. Alper

    真是个好消息。继续努力。作为一名 IT 专业人员,Chrome 在所有地方都很受欢迎,因为它即使在没有 Windows 管理员权限的情况下也易于安装。

    2017 年 11 月 14 日 上午 00:21

  39. FDominicus

    好吧,如果你能使文本字段的速度至少能跟上我的打字速度,我会回来的,我打字很差,速度也不快。

    2017 年 11 月 14 日 上午 00:25

  40. zoobab

    现在是 2017 年,大多数程序只运行在一个核心上。

    使用 ZeroMQ 和 IPC 来协调你的工作进程,你就可以扩展。无需重新发明轮子。

    2017 年 11 月 14 日 上午 01:10

  41. aim

    使配置文件像 Chromium 中的“用户”一样出色!

    需要一个 GUI 来简化在不同配置文件之间的切换
    需要一个“以其他用户身份打开”
    在使用不同配置文件时打开外部链接时,不需要“firefox 已经打开”

    2017 年 11 月 14 日 上午 01:43

  42. Dutra de Lacerda

    更好的多 CPU 似乎是可行的方案。但并非唯一方案。
    专注于它会导致低效代码的趋势继续下去。

    我个人使用旧电脑来测试任何应用程序。
    现在在我的 1GHz 686 CPU 和 512MB RAM 上使用 Midori。
    JAVA 怎么样?由于多种原因,JAVA 需要关闭。

    访问网站时,Cookie 不是唯一的问题。
    JAVA 和对多个无关位置的调用是一个杀手。
    想知道为什么...我们都知道原因:滥用的倾向!

    所有这些都必须根据需要进行阻止,可以随意命名。
    ...以及“渲染”,在不需要的时候。

    更短的代码也是许多人抛弃的一种质量。
    想知道为什么...我们都知道原因:懒惰的倾向。
    当 Opera 不再是一个 3MB 的应用程序时...
    ...肯定存在严重的问题,Lynx 可能是重回正轨的途径。

    一切都倾向于破坏...当被抛弃时。

    2017 年 11 月 14 日 上午 02:22

  43. pushpendra

    祝贺你们。我在等待升级。

    2017 年 11 月 14 日 上午 03:08

  44. Greg

    我将尝试使用 Quantum,作为一名长期的 Firefox 用户,我要祝贺大家所取得的成就。

    不幸的是,为了支持 WebExtensions 而取消对旧版插件的支持,这将严重影响我的工作流程并降低我的工作效率。

    https://www.ghacks.net/2017/03/14/top-firefox-add-ons-and-their-webextensions-status/
    (虽然其中一些内容自 3 月份以来已经发生了变化,但变化幅度还不够大。)

    我需要一段时间才能完全切换到 Quantum。

    2017 年 11 月 14 日 上午 03:40

  45. Shazada

    我从未切换到任何其他浏览器 :),我迫不及待地想在明天更新!

    2017 年 11 月 14 日 上午 03:51

  46. Pablo Gonzalez Portela

    非常感谢大家。从一开始我就一直是 Firefox 用户,并且很自豪地坚持使用真正维护用户自由的人。我非常高兴看到我的浏览器再次飞速运行!:)

    2017 年 11 月 14 日 上午 04:32

  47. JiFish

    我宁愿拥有可定制性而不是速度。这就是我坚持使用 FF 的原因。现在扩展功能已经被大幅削弱,我正在寻找一个新的浏览器。

    2017 年 11 月 14 日 上午 04:47

  48. Gaz

    我已将我的 Firefox 网络浏览器定制为我喜欢的样式,但现在大多数插件都将消失——都是为了速度。我喜欢 Firefox 的原因正是因为它可以让我定制几乎任何想要的东西。

    但现在它将变成另一个 Chrome 克隆。

    你们已经堕落到何种地步!

    PS:我们仍然可以更改[背景]主题/外观吗?我到处都使用 Firefox 蓝点主题。

    2017 年 11 月 14 日 上午 05:39

  49. Kat Marsen

    Firefox 是一只老旧疲惫的狗。它很慢。你甚至无法在文本字段中输入内容,而不会明显地卡顿。如果我必须使用 Firefox 并输入超过一个句子,我会打开记事本,在里面输入内容,然后将其粘贴到 Firefox 中,它已经糟糕到这种地步了。

    不,这不是一些“自定义插件”的问题:在全新的 48 核服务器上运行的标准 Firefox 也是这样(它是机器上安装的唯一浏览器)。

    2017 年 11 月 14 日 上午 05:51

  50. Carlos

    我在尝试在开发工具中打开一个压缩的 JS 文件时遇到了问题。该选项卡只显示“正在加载...”并且从未加载。也许这不是一个常见的用例,但我偶尔需要对压缩的 JS 进行一些快速检查。以前这不是问题。

    你可以在这个网站上重现,方法是检查你的一个 JS 文件。随便选择一个作为示例(我对内容不太熟悉,也不需要调试它 :),但请看一下)。
    https://hacks.mozilla.ac.cn/wp-content/plugins/subscribe-to-comments-reloaded/includes/js/stcr-plugin.js?ver=4.8.3

    2017 年 11 月 14 日 上午 08:30

  51. Charley S

    哦,我的天!我已经很久没有使用 Firefox 了,我决定试用一下 Quantum:我喜欢它。它很快,运行良好,而且外观很棒。

    请继续努力,你们的努力是宝贵的,我们非常感谢!

    2017 年 11 月 14 日 上午 09:56

  52. MarkTheBike

    与其他人不同,我没有放弃 FF 转向 Chrome(Chrome 是 Google,Google 就像毒药,在我看来)。我尽可能地使用 FF,并且捐过款(很久以前,我感到很尴尬)。谢谢大家,感谢你们辛勤工作,致力于让 FF 继续存在,以造福那些不喜欢被视为“产品”的人。PS:我的所有插件似乎都已更新,太棒了!

    2017 年 11 月 14 日 上午 11:01

  53. Jigar

    $ ps aux | grep -i ‘firefox’ | wc -l
    7

    团队做得太好了!

    2017 年 11 月 14 日 上午 11:17

  54. Pär Amsen

    刚刚试用了 v57...脱帽致敬!我现在在我的所有台式机上都切换到了 FF,它速度快、美观且很棒!

    2017 年 11 月 14 日 上午 11:27

  55. lje

    赞扬和感谢你们的辛勤工作。
    我在 56 版本上遇到了很多问题。现在没有了。
    非常快,有隐私护盾和 ublock。
    我喜欢流畅的滚动!

    2017 年 11 月 14 日 下午 12:07

  56. FatTony

    文章写得很好。通俗易懂,文笔也很生动。谢谢!

    2017 年 11 月 14 日 下午 15:50

  57. Dhruva

    内容深入的优质文章,涵盖了浏览器的各个方面。为了使所有更改都能与现代硬件良好协作,必须对现有代码库进行深入的修改,这是一项艰巨的任务。干得好,祝一切顺利。
    任务窃取部分让我想起了我在 2007/08 年使用 Intel Threading Building Blocks (https://www.threadingbuildingblocks.org/) 时的工作——递归并行。

    2017 年 11 月 14 日 下午 20:53

  58. Stefan

    祝贺新的 Firefox!并衷心感谢你们的辛勤工作!

    我有点担心“旧”插件。除了隐私和开源之外,这是 Firefox 最重要的独特卖点。
    例如:似乎没有用于 LocalStorage 的自动删除功能,包括白名单。所有针对这种情况的插件现在都无法使用。开发者告诉我,插件现在无法再访问 LocalStorage。

    这就是我们要坚持使用 FirefoxESR 的原因,直到这个问题解决为止。我希望它能够得到解决。一些插件的开发者告诉我,由于限制,现在无法再访问 LocalStorage。我不是开发者,所以我只能相信我听到的。

    无论如何,Firefox 似乎正走在正确的道路上!如果用于改进工作流程(搜索栏)和隐私(例如 LocalStorage)的必要插件能够再次正常工作,我们的公司将从 ESR 切换回“普通”Firefox!

    祝一切顺利,再次感谢你们的辛勤工作!

    2017 年 11 月 15 日 上午 05:07

  59. Patrick Sullivan

    Firefox 在很长一段时间内运行得最好。现在,当我第一次下载它时,它运行得很好,大约 30 分钟后,它就开始出现问题。

    “此页面正在运行脚本,您要停止它吗?”其中一个提示写着。

    另一个提示写着

    “网页正在减慢浏览器速度。”

    一旦它开始出现问题,它就会变慢?

    您对大约 30 分钟的浏览后出现的问题有什么建议吗?

    2017 年 11 月 15 日 上午 11:16

  60. Rafael Ebron

    做得很好,解释/文章也很棒!夜间版本很好。

    继续努力。永远庆祝发布。

    2017 年 11 月 15 日 上午 11:18

  61. 大皮特

    在家更新后它把我从 Chrome 中拉回。我们在工作中使用 ESR(更新周期),所以我们是否需要等到 ESR 59 才能使用 QuantumESR?

    2017 年 11 月 16 日 上午 05:33

    1. Lin Clark

      是的,第一个包含 57 版本所有内容的 ESR 版本将是 ESR 59。

      2017 年 11 月 16 日 上午 05:54

本文评论已关闭。