Rust 正在重构前端工具链,这速度太夸张了

Rust 正在重构前端工具链,这速度太夸张了

2026 年,Webpack 还在用,但如果你还在用 Terser 压缩代码、ESLint 做 lint、Rollup 打包——你的构建速度已经被 Rust 工具链甩开一个数量级了。

Rspack、Rolldown、Biome、OXC、SWC——这些 Rust 重写的工具已经不是”新玩具”,而是大厂项目上的标配。这篇文章直接上对比数据,不吹不黑。


一、性能差距到底有多大?

场景 老方案(JS) 新方案(Rust) 速度提升
项目打包 Webpack 5 Rspack **10-20x**
打包器 Rollup Rolldown **5-10x**
代码检查 ESLint Oxc / Biome **50-100x**
代码压缩 Terser SWC **20-30x**
解析 Babel OXC Parser **100x+**

这里的数字不是概念,是实打实的 Benchmark。

举个例子:一个 50 万行模块的 React 项目,Webpack 冷启动 10 分钟,Rspack 冷启动 不到 40 秒。HMR 从 3 秒降到 50ms。


二、2026 三巨头选型指南

Rspack — 如果你有 Webpack 旧项目

字节开源,设计哲学很明确:Webpack 的插拔式替代品

// rspack.config.js —— 配置和 Webpack 95% 兼容
module.exports = {
  entry: './src/index.js',
  module: {
    rules: [
      { test: /.js$/, use: 'babel-loader' }
    ]
  }
}

迁移成本极低,大部分 Webpack 项目改几行配置就能切过来。飞书抖音 Web 版等字节内部项目已经全部切到 Rspack。

适合:有历史包袱的大型 Webpack 项目


Rolldown — 如果你在用 Vite

尤雨溪的 VoidZero 团队出品,目标是 统一 Vite 的开发和生产构建

Vite 开发阶段用 esbuild(快),生产阶段用 Rollup(慢)
Rolldown 用 Rust 重写 Rollup,两个阶段统一

Vite 6+ 默认构建引擎就是 Rolldown

配置完全兼容 Rollup,一条命令迁移:

npm remove rollup && npm install rolldown -D
# vite.config.ts 不用改,Rolldown 自动接管

适合:Vite 项目用户,追求一致构建体验


Biome — 如果你还在用 ESLint + Prettier

Biome 是最直接的”删包工具”。一个二进制文件替代 ESLint + Prettier + 部分 Babel,配置量减少 70%。

# 删除这两个
npm remove eslint prettier
# 加这一个
npm install --save-dev @biomejs/biome
// biome.json —— 极简配置
{
  "linter": {
    "enabled": true,
    "rules": { "recommended": true }
  },
  "formatter": {
    "indentStyle": "space",
    "lineWidth": 100
  }
}

适合:新项目或愿意一次性改代码风格的项目


三、OXC:被忽视的底层引擎

很多人以为 OXC(JavaScript Oxidation Compiler)只是另一个工具。其实它是底层引擎,Rspack 和 Rolldown 都用了它的 Parser。

OXC 全家桶:
├── oxc_parser    —— 解析器(替代 Babel Parser)
├── oxc_linter    —— Linter(替代 ESLint)
├── oxc_minifier  —— 压缩器(替代 Terser)
├── oxc_transform —— 转换器(替代 Babel)
└── oxc_resolver  —— 模块解析器

OXC 的 Parser 解析速度是 SWC 的 2 倍、Babel 的 100 倍。Rolldown 的底层就依赖于它。


四、迁移建议

推荐迁移路径(从低风险到高收益排序):

  1. 先换压缩器:Terser → SWC(改一行配置,20-30x 提升)
  2. 再换 Linter:ESLint → Biome(删两个包,改一个配置文件)
  3. 打包器选型
  • 有 Webpack 旧项目 → Rspack
  • 用 Vite 的项目 → Rolldown(Vite 6+)
  • 新项目 → 直接 Vite 6(默认 Rolldown)
  1. 统一代码检查:Biome 一把梭

暂时不用急着换:

  • Turbopack(还在 alpha,只绑 Next.js)
  • Bun(运行时和打包都还在迭代)

一句话总结:2026 年,Rust 重写前端工具链已经不是趋势,而是正在进行的基础设施升级。花一个下午迁移,换来的是一整个研发周期的速度红利。

评论区

0 条评论

登录后可评论。

查看完整榜单
查看完整榜单
查看完整榜单