Hacker News 中文摘要

RSS订阅

我试用了Servo:用Rust打造的隐秘浏览器引擎 -- I tried Servo, the undercover web browser engine made with Rust

文章摘要

文章探讨了现代浏览器引擎的演变,指出大多数浏览器如今基于Chromium代码,如Google Chrome、Microsoft Edge等,而Safari和Firefox是主要例外。回顾过去,早期浏览器如Internet Explorer、Opera等曾使用各自独立的引擎,但随着时间的推移,许多浏览器逐渐转向使用Chromium或WebKit等主流引擎以简化开发。文章还提到Servo,一个用Rust编写的潜在替代引擎,暗示未来浏览器引擎可能迎来新的变革。

文章总结

标题:我试用了Servo,这款用Rust编写的隐秘浏览器引擎

主要内容:

在当今的浏览器市场中,Google Chrome占据了主导地位,而大多数竞争对手如Microsoft Edge、Vivaldi、Opera、Brave和Arc等,都基于相同的Chromium代码。主要的例外是Safari和Firefox。然而,这种情况并非一直如此。在21世纪初,Internet Explorer、Opera、Netscape等浏览器都使用各自的引擎,但这些浏览器逐渐消失或转向了竞争对手的引擎,以简化开发。如今,Chromium的Blink引擎和Firefox的Gecko引擎是主要的竞争者。

这种单一引擎的垄断对开放网络构成了威胁。如果只有一个标准实现,那么这个实现就成为了标准。这意味着Chromium的局限性和安全漏洞会影响到大多数其他浏览器。

幸运的是,有一个名为Servo的替代浏览器引擎,它可能有一天会与Chrome、Safari和Firefox竞争。Servo的目标是使用Rust编程语言创建一个完全多线程操作和内存安全的网页渲染引擎。Rust的多线程操作和内存安全性使得Servo在性能和安全性方面具有优势。

Servo由Linux Foundation Europe管理,目标是成为一个“可嵌入的网页渲染引擎”,不仅适用于浏览器,还可以替代Electron或Android WebView。目前,还没有功能齐全的浏览器使用Servo,但用户可以通过Windows、macOS、Android和Linux的夜间快照进行试用。

尽管大多数网站在Servo上存在一些渲染问题,甚至有些完全无法显示,但像Wikipedia、CNN Lite等网站则运行良好。Servo的图形能力在一些演示页面上也得到了展示,尽管在性能上还无法与Safari等主流浏览器完全匹敌。

Servo最初是Mozilla的一个项目,开发始于2012年,Samsung在2013年加入。Mozilla曾计划开发基于Servo的Android浏览器或其他应用程序,并最终可能取代Firefox的Gecko引擎。然而,2020年Mozilla裁员250人,包括许多负责Servo开发的员工,导致Servo项目被搁置。Servo项目在2020年11月重组,并在2023年获得了Igalia等组织的新支持,开发活动重新活跃起来。

目前,美国司法部正在对Google进行反垄断诉讼,要求其剥离Chrome浏览器并停止与其他浏览器的搜索引擎协议。Mozilla请求法官不要终止这些协议,因为Google在Firefox中的默认搜索引擎位置是Mozilla的主要收入来源。如果Mozilla失去这些收入,Firefox可能会转向WebKit或Chromium/Blink以节省开发成本。

无论Firefox或Gecko的未来如何,Servo的发展都值得期待。Servo可能会成为浏览器引擎领域的一个重要竞争者,为开放网络带来新的活力。

评论总结

评论总结:

  1. 对Mozilla决策的质疑

    • 多位评论者对Mozilla放弃Firefox技术未来表示不解,认为其决策缺乏逻辑,甚至可能受利益驱动。
    • 引用:"It's still baffling to me that Mozilla threw out Firefox's technical future"
    • 引用:"Mozilla actually leapfrogged Google in the browser development space for a time, and then...decided it wasn't worth pursuing any further."
  2. 对Servo项目的看法

    • 有评论者认为Servo的技术路线(如模块化设计)具有创新性,可能为未来浏览器开发提供便利。
    • 引用:"the approach Servo is using for CSS Grid is pretty cool...will make it easier for people to get involved in web engine development"
    • 引用:"Describing Servo as 'new' is a stretch ;)"
  3. 对Rust语言的评价

    • 尽管Rust以内存安全著称,但有评论者指出其应用仍可能崩溃,认为其宣传可能过度。
    • 引用:"I’m always surprised when you fire up a Rust app and do something and it crashes out"
    • 引用:"I’m a big fan of modern sum types, and like to imagine an alternate reality where Go had them from the start…"
  4. 对浏览器垄断的挑战

    • 有评论者提到Ladybird项目,认为其可能挑战Blink引擎的垄断地位。
    • 引用:"there is also https://ladybird.org/ to challenge to monopoly of Blink."
  5. 对GUI和Web技术的批评

    • 有评论者认为当前GUI和Web技术过于复杂,呼吁更简单、可组合的语言。
    • 引用:"I feel guis have taken a wrong turn. We need a simple composable language."
    • 引用:"HTML and css is not it. The sheer complexity is what causes all the bs."
  6. 性能测试的对比

    • 有评论者对比了不同浏览器在运行Dogemania测试时的性能表现,显示Chrome在图像处理上表现更佳。
    • 引用:"The Dogemania test ran at a smooth 60 FPS on my M4 Pro MacBook Pro until reaching around 400 images"
    • 引用:"I ran Dogemania on Chrome until 1400 images at steady 60 FPS at which point I got bored and closed the tab."