Rolldown 新功能:"耗時雷達"!Vite 8 嘗鮮!
“當使用 @rolldown_rs 遇到構建變慢時,你現在可以直接看到是哪個插件在拖后腿!”——VoidZero 官方推文剛發 3 小時,尤雨溪(Evan You)一鍵轉發 ??

過去一年,Vite 團隊一邊維護 esbuild + Rollup 的雙引擎架構,一邊悄悄孵化“終極替代品”——用 Rust 重寫的 Rolldown。
目標只有一個:在保持 Rollup 兼容性的前提下,把生產構建速度再提高一個量級。
2025 年 12 月,Rolldown 1.0.0-beta.54 落地,帶來第一個“殺手級”功能:Plugin Timings(插件耗時告警)。
殺手級功能:“耗時雷達”!
構建結束,如果你的插件階段“明顯拖慢”總耗時,終端會彈出一張類似體檢報告的清單:

[PLUGIN_TIMINGS] Warning: Your build spent significant time in plugins. Here is a breakdown:
vite:css 30 %
vite:terser 18 %
vite:worker 16 %
vite:resolve-builtin:get-environment 10 %
vite:asset 9 %占比從高到低,最多列出 5 個“元兇”,并注明:
注:時間包含 Rust 端處理、Tokio 調度、NAPI 數據轉換、JS 事件循環等全部開銷,僅供參考。
換句話說——不用手動打 profile,不用翻冗長的 --debug 日志,一眼就知道該優化誰。
觸發邏輯與閾值
Rolldown 會在后臺統計:
- 總構建耗時 T_total
- 鏈接階段耗時 T_link
- 插件階段耗時 T_plugin = T_total ? T_link
當 T_plugin > 100 × T_link 時判定“插件顯著慢”,立即打印警告。
100 倍這個閾值是官方在數十個真實倉庫里采樣后定的——既能避免誤報,又不會漏掉真正的性能殺手。
快速體驗:三步把 Vite 8 + Rolldown 跑起來

# 1. 創建最新 Vite 8 beta
npm create vite@beta my-app --template vue
cd my-app
# 2. 強制使用 Rolldown 1.0.0-beta.54(npm 會在 postinstall 階段自動編譯 Rust)
npm install rolldown@1.0.0-beta.54 -D
# 3. 啟動生產構建
npm run build如果項目里還有“高耗能”插件(例如 terser、舊版 postcss、未緩存的 imagemin),你會立刻看到那張 PLUGIN_TIMINGS 表。
實戰:把 40s 構建壓到 8s
以社區提供的 “legacy-tsc-vue” 倉庫為例,原構建時間 39.7 s,警告如下:
vite:terser 42 %
vite:imagin 21 %
vite:legacy 12 %優化步驟:
- 把 terser 換成 oxc-minify(官方壓縮器,Rust 實現)
- imagemin 換成 vite-plugin-squoosh(Rust + WASM,并發壓縮)
- @vitejs/plugin-legacy 開啟 modernPolyfills: false,只對極少數舊瀏覽器打補丁
再次構建:8.3 s,插件耗時占比降至 18%,警告消失。
相關文檔:https://rolldown.rs/options/checks#plugintimings























