无Chrome进程、无容器的浏览器
Kitesurf并非简化版的Chromium。它是一款从零构建的浏览器,完全运行在Cloudflare Workers(Cloudflare的无服务器计算平台)的V8隔离环境中,不依赖Chrome进程,也不使用容器封装 [1]。该系统分为四个部分:一个处理Chrome DevTools协议和会话状态的引擎(Engine),一个在Blitz渲染引擎、Mozilla的Stylo CSS解析器和Boa JS(基于Rust的ECMAScript引擎)支持下运行页面DOM和JavaScript的PageScript隔离环境,一个将页面转换为像素、JPEG、PNG或PDF输出的PageRenderer,以及一个通过单一入口强制执行CORS规则和Cookie隔离的SandboxOutbound网络层 [1]。
整个系统由开源组件组装而成,最显著的是Blitz(Dioxus项目的Rust渲染器)和Boa JS,并受到开源Rust无头引擎Obscura的启发 [2]。Cloudflare表示,Kitesurf的开发耗时约12周 [3],目前已能渲染TodoMVC变体、维基百科、Hacker News、Cloudflare博客以及部分Cloudflare仪表板内容,并通过了超过215,000项Web平台测试 [1]。
引人注目的是,Cloudflare自己的工程师对该项目也感到难以置信。曾参与Sandstorm和Cap'n Proto项目的资深Cloudflare Workers架构师Kenton Varda表示,当团队首次向他介绍时,他根本不相信,称其为“绝对疯狂的项目”。负责构建该项目的工程师Brendan Irvine-Broque则更直白地表示:“登月项目真的成功了,而我仍不敢相信它真的能运行。”一个完整的浏览器实现竟能在Worker中运行且完全无需容器,这一细节连项目发布者自身仍在消化中。



