Cloudflare Kitesurf 唔用完整 Chromium:慳 CPU 同 RAM,兼容性要取捨
Tech News

Cloudflare Kitesurf 唔用完整 Chromium:慳 CPU 同 RAM,兼容性要取捨

圖片:via iThome — https://www.ithome.com.tw/news/177982
TechLab 編輯部(譯)·

V8 isolate 加無狀態架構,暫時主攻一次性 agent 任務

Cloudflare 整咗個新瀏覽器 Kitesurf,但佢冇打算同 Chrome 爭你部電腦嘅預設瀏覽器位置。呢套引擎專門畀 AI agent 擷取 HTML、影 screenshot、產生 PDF 同操作網頁,設計時直接刪走分頁、extension、裝置同步同順滑動畫等人類先會在意嘅功能。重點好實際:一個 agent 配一個完整 Chromium,數量一多,CPU、RAM 同雲端帳單都幾難頂。

點解完整 Chromium 咁重

Chromium 要應付影片、WebGL、複雜排版、GPU 加速、extension 同長時間登入,每個功能都帶住資源開支。Kitesurf 換咗另一條路:HTML 同 CSS 主要交畀 Rust 元件處理,再編譯成 WebAssembly;網頁 JavaScript 就喺 Cloudflare Workers 嘅 V8 isolate 入面跑。每個頁面同跨程序 iframe 可以開獨立 PageScript isolate,網上連線亦只准經指定嘅 SandboxOutbound Worker 出入,cookies 分開存放,減少唔同頁面互相掂到資料嘅機會。

所謂 無狀態亦唔代表成個瀏覽器完全冇 state。Kitesurf 嘅 Engine 仍然要保存 session,同時接收 Chrome DevTools Protocol(CDP)指令;負責執行網頁同輸出畫面嘅其他元件就盡量即開即用,用完可以掉。遇到 renderer 卡死,系統可以直接換一個 isolate 再試,唔使長期養住成批預熱 container。呢個設計特別啱突然湧入大量短任務嘅 agent workflow。

Cloudflare Kitesurf 官方公布文章主圖

圖片:Cloudflare

慳資源,但單次任務會慢啲

Cloudflare 用 14 個網址測試 screenshot 同 HTML 擷取,每項跑五次再取中位數,對照組仲係已經預熱嘅 Chromium。官方數字話,Kitesurf 嘅 CPU 用量低 3.1 至 3.8 倍,RAM 用量低 4.7 至 7 倍;不過完成時間慢 1.7 至 1.8 倍。換句話講,佢適合追求大量任務同時運行同壓低每次任務資源,唔適合要求單次操作最快有結果。呢批數字全由 Cloudflare 自己公布,測試網站亦得 14 個,未足以代表登入系統、購物網站或者大型 web app。

另一點要拆清楚:Playwright 同 Puppeteer 主要係控制瀏覽器嘅工具,Kitesurf 就係底層引擎,三者唔屬於同一層產品。Cloudflare Browser Run 則係託管平台,原本提供完整 Chromium,而家多一個 Kitesurf 選項。現有 Playwright、Puppeteer 或 CDP client 理論上只要改 endpoint 參數就用到,但 Kitesurf 只實作咗部分 CDP;程式連得上,唔等於每條舊 script 都會原封不動跑完。

Kitesurf Engine、PageScript 同 PageRenderer 處理一次瀏覽請求嘅架構圖

圖片:Cloudflare

網站兼容性仍然係 beta 水平

Cloudflare 話 Kitesurf 已通過超過 21.5 萬項 Web Platform Tests,亦可以處理 TodoMVC、Wikipedia、Hacker News、Cloudflare Blog 同部分 Cloudflare dashboard。不過 WPT 主要量度 web 標準支援,未完全反映真實網站嗰堆第三方 script、追蹤工具、古怪 CSS 同登入流程。Kitesurf 而家未支援影片、WebGL、真實 TLS fingerprint 驗證,亦唔適合要長時間保持登入狀態嘅工作;碰上 bot challenge 或 CAPTCHA,轉返用 Browser Run 嘅 Chromium 會穩陣得多。

Cloudflare 展示 Kitesurf 通過 Web Platform Tests 數量增長嘅圖表

圖片:Cloudflare

Kitesurf beta 期間可以喺 Browser Run 免費試用,但仍受帳戶用量限制;Cloudflare 暫時亦冇列出 beta 完結後嘅獨立價錢。官方講嘅「成本低 3 至 7 倍」源自 CPU 同 RAM 差距,未等同客戶帳單會即刻平同一比例,因為 Browser Run 現有收費仲係按 browser hours 同同時運行數量計。對開發團隊嚟講,現階段最合理嘅用法係先分流:公開內容擷取、一次性 screenshot 交畀 Kitesurf,登入、付款、影片同反 bot 較重嘅流程繼續用 Chromium,再用自己常見嘅網站清單量度成功率同實際費用。


參考來源

本文根據原文及公開資料整理;資料有出入時,以原文及官方資料為準。

分享:WhatsAppThreadsTelegramFacebook