Vite 底层彻底换血,尤雨溪想要控制整个前端生态?

Hello,大家好,我是 Sunday。

最近,尤雨溪发了一篇非常关键的文章,宣布 Vite 正式引入 Rust 写的打包器 Rolldown ,并将逐步替代现有的 Rollup 成为 默认打包器

该文章发布在 尤雨溪 新公司 void(0),文章链接:https://voidzero.dev/posts/announcing-rolldown-vite

虽然这篇文章的内容并不长,但是内部做出的改成确实非常大的,可以毫不夸张的说:尤雨溪把整个 vite 的心脏都换掉了!

所以,咱们今天这篇文章,我不打算重复发布会上的内容,而是一起来看看这波 "换心脏" 的背后逻辑:为什么 Rust 能上位?真实速度到底快了多少?尤雨溪到底在下一盘什么棋?

01:Vite 正在全面 Rust 化

很多人看到这次更新,可能会说:"Rolldown 不就是个性能更好的打包器吗?用不用都行吧?"

说实话,这种理解可能有些过于表面了。

这次更新的不仅仅是一个工具,而是把整个的 vite 底层都重写了一遍:

  • Vite 的打包器,从 JS 写的 Rollup,换成了 Rust 写的 Rolldown
  • 配套的 Babel、Terser、ESLint,也被 Rust 实现的 Oxc 接管
  • 整个构建链路,从解析到压缩,从转换到分析,全都 Rust

为什么要这么干呢?

很简单,因为:JS 写的构建工具已经摸到天花板了。

不管你怎么做缓存、怎么压缩 AST、怎么优化 Plugin 顺序,JS 就是做不到 Rust 那种级别的执行效率。

而现代前端的项目体积正在变得越来越大,早就不是之前只写几个静态页面的事情了!

目前 微前端、组件库、国际化、权限系统......每加一个功能,构建时间就会变得越来越长,特别是很多公司在配合 CI/CD 的逻辑,每构建跑一次可能就得跑 2 分钟,而如果换成 Rolldown 那么就只要 15 秒上下了,你算算整个团队每天省下多少时间?

因此,这样的替换 "势在必行",同时这也标记着:Vite 已经不再是一个 JS 写的现代前端工具了,而是一个由 Rust 驱动的、高性能构建内核。

02:真实表现到底快了多少?

咱们先来看官方数据:

这些官方给出的数据看上去是不是非常炸裂!

但是,根据前端圈的历史特性:所有官方性能对比,都只能作为参考,而不能作为实际的决策依据。

为啥呢?

因为,实际开发中,环境不同、项目结构不同、依赖链不同、构建目标不同,变量太多了。

很多的 demo 是干净环境下跑的,而你实际项目里,插件、polyfill、非预构建依赖一大堆,所以 官方数据,仅供参考!

但我要说的是:哪怕实际操作中,只能做到官方数据的一半,这件事也值得我们去尝试下。

就拿我自己接触的几个中大型项目来说,生产环境下的 Vite 构建时间基本都在 30 秒到 2 分钟之间浮动,特别是:

  • 多语言、主题、子应用拆包场景下,Rollup 明显吃力
  • babel + terser 的组合在压缩阶段特别耗 CPU
  • 内存比较小的,如果在启动其他的任务(你电脑总得开其他的软件吧),那速度就更慢了

换句话说,如果 Rolldown 真能在这些环节上带来 哪怕 30% 的性能提升,对于团队的持续集成、构建稳定性、开发反馈体验,都是实打实的收益。

03:尤雨溪在下一盘大棋

很多同学可能会说:Vite 已经"遥遥领先"了,为啥还非要换底层呢?多麻烦呀!

如果你有这种疑惑的话,那么可能是因为你对 vite 使用到的这些新工具还不太了解,如果你了解一下背后的发布方,就知道这件事没那么简单。

Rolldown 是谁发布的?不是 Vue,也不是 Vite 核心团队,而是尤雨溪创办的新公司 ------ VoidZero (也叫做 void(0) ) 。想要详细了解的,可以看下我之前发的这篇文章 尤雨溪新公司 Void(0) 首款产品发布,竟然是它...

这是一家由 尤雨溪 创建的专门做 JavaScript 工具链的开源公司。关于这一块的详细介绍,可以看这篇博客 尤雨溪创建 VoidZero ,并得到 460 万美金融资

这家公司刚一出手就连放两个大招:

  • 第一个是 Oxc :这是一个全新的 Rust 实现 JS 工具链(parser、transform、minifier、linter、formatter,全都自己造)
  • 第二个就是 Rolldown:Vite 打包器的 Rust 替代方案,目标直接瞄准 Rollup、Babel、Terser 这整条传统链路

而这次 Vite 接入 Rolldown,正是 void(0) 把自家工具「回注入」开源生态的第一步。

所以这不是在"优化 Vite",而是想要 "替换整条构建基础设施"

你可以这么理解 void(0) 的策略路径:

  1. Vue 站稳前端框架圈核心位置
  2. Vite 用 Rollup 起家,成为构建工具主流选择
  3. void(0) 作为新公司登场,切入工具链底层,用 Rust 重写一整套生态
  4. 再反哺 Vite,用 Rolldown 替代原来的 JS 构建方案
  5. 最终形成:Vue + Vite + void(0) 工具链 的闭环

这其实是一个很聪明、很清晰的长期路线图:不再被 Babel、Terser、ESLint 等"生态外依赖"所绑定,而是自己控制工具底层、性能节奏、开发体验。

尤雨溪本人也在社区里反复提过:Vite 的未来,不只是"构建工具",而是下一代工程化的"前端开发基建平台"。

而这张底牌,就是 Rolldown + Oxc。

你可以想想看,如果:

  • Vue 生态已经在试水 Rolldown
  • Vite 即将全面接入 Rolldown
  • Vite 插件作者必须适配 Rolldown(否则未来会不兼容)

那就意味着:

无论你是 Vue、React、Svelte,还是用 Vite 的任何框架,都必须配合这次 "Rust 工具链" 的迁移。 否则将有可能会被踢出前端生态。

而想要参与,就必须要使用 Void(0) 的产品。

这样,尤雨溪就可以很成功的让 Void(0) 变成整个前端生态的标准了!

相关推荐
陈_杨3 分钟前
鸿蒙5开发宝藏案例分享---切面编程实战揭秘
前端
喵手10 分钟前
CSS3 渐变、阴影和遮罩的使用
前端·css·css3
顽强d石头12 分钟前
bug:undefined is not iterable (cannot read property Symbol(Symbol.iterator))
前端·bug
烛阴21 分钟前
模块/命名空间/全局类型如何共存?TS声明空间终极生存指南
前端·javascript·typescript
火车叼位25 分钟前
Git 精准移植代码:cherry-pick 简单说明
前端·git
江城开朗的豌豆28 分钟前
JavaScript篇:移动端点击的300ms魔咒:你以为用户手抖?其实是浏览器在搞事情!
前端·javascript·面试
华洛35 分钟前
聊聊我们公司的AI应用工程师每天都干啥?
前端·javascript·vue.js
江城开朗的豌豆35 分钟前
JavaScript篇:你以为事件循环都一样?浏览器和Node的差别让我栽了跟头!
前端·javascript·面试
gyx_这个杀手不太冷静38 分钟前
Vue3 响应式系统探秘:watch 如何成为你的数据侦探
前端·vue.js·架构
晴殇i44 分钟前
🌐 CDN跨域原理深度解析:浏览器安全策略的智慧设计
前端·面试·程序员