AICon 北京站 Keynote 亮点揭秘,想了解 Agent 智能体来就对了! 了解详情
写点什么

Webpack 创始人推出比 Webpack“快 700 倍”的 Turbopack,基于 Rust 编写

  • 2022-10-26
    北京
  • 本文字数:1152 字

    阅读完需:约 4 分钟

Webpack 创始人推出比Webpack“快700倍”的Turbopack,基于Rust编写

10 月 26 日,Vercel 公司正式宣布推出新的打包工具 Turbopack。Webpack 创建者 Tobias Koppers 于 2021 年 4 月加入该公司,牵头了该项目。

 

Turbopack 是 Vercel 公司之前一些工作的延续。在此之前,他们用基于 Rust 的 SWC 替换基于 JavaScript 的转译器 Babel,速度提升了 17 倍。他们还替换了 Terser,压缩的速度提高了 6 倍,从而减少了加载时间和带宽的使用。

 

“Webpack 已被下载超过 30 亿次。它已成为 Web 构建不可或缺的一部分。但就像 Babel 和 Terser 一样,是时候全力以赴了。我加入了 Vercel,组建了一个团队来构建 Web 下一代的打包工具。”Tobias 说。

 

据 Vercel 首席执行官 Guillermo Rauch 介绍,与 Webpack 一样,Turbopack 也是开源的。

 


Vercel 声称 Turbopack 在大型应用中,展示出了 10 倍于 Vite 的速度,700 倍于 Webpack 的速度。在更大的应用中,差异更加巨大 —— 通常比 Vite 快 20 倍。而且启动速度飞快,在一个 3000 个模块的应用里,Turbopack 只花了 1.8 秒启动,Vite 花了 11.4 秒。

 

Rauch 说,性能改进不仅是因为基于 Rust ,还在于“基于增量计算思想的架构”。该团队借鉴了谷歌 Bazel 构建系统中的一些想法,该系统适用于大型项目。增量方法意味着避免做重复的工作,“如果你创建一个增量图,开发人员在其中进行更改,只有受影响的图部分会被重新计算。”

 

Turbopack——目前处于 alpha 预览阶段——是“一种更好的架构,我认为 Rust 和正确架构相结合意味着我们至少在 10 年内不需要改变,”Rauch 表示。

 

Turbopack 是怎么来的?“Next.js 早在 2016 年就开始使用 Webpack 作为组件,”他说。“我们可能是 Webpack 的最大用户。我们在开始时和 Webpack 创建者 Tobias 聊了很多,因为当时我们有像沃尔玛这样的客户,有超过 250 名工程师在 Next.js 代码库上工作,分享一些关于编译过程的反馈。我们意识到 JavaScript 和 TypeScript 代码的数量增长如此之快,以至于超出了基于 JavaScript 的工具和架构的能力。Tobias 也从未想过该工具会得到如此广泛的采用。”

 

Webpack 面向单页应用程序 (SPA) ,“但我们不是,因此我们改变了 Webpack 的默认设置。”当 Koppers 加入 Vercel 时,“他带来了 10 年的专业知识,见证了这件事情的发展,”Rauch 说。“他意识到架构和运行时的所有缺陷。因此,Tobias 成为了 Rust 专家。”Turbopack 一个有趣的特性是,多亏了 Rust,它可以编译成 WebAssembly 并在浏览器中运行。

 

“Turbopack 旨在成为 Webpack 的直接替代品,Next.js 是它的第一个客户,”Vercel 首席技术官 Malte Ubl 说,“随着时间的推移,我们计划针对所有开发者用例继续迭代和改进 Turbopack。”

 

延伸阅读:

https://vercel.com/blog/turbopack

https://devclass.com/2022/10/25/webpack-founder-debuts-rust-based-turbopack-that-is-700x-faster/

2022-10-26 19:0615026

评论

发布
暂无评论
发现更多内容

模块4作业

Geek_2e7dd7

架构训练

Python 正则表达式

若尘

正则表达式 正则 Python编程 5月日更

Golang 别名类型

escray

学习 极客时间 Go 语言 5月日更

Python 之父爆料:明年至少令 Python 提速 1 倍!

Python猫

Python

重学Scrum三大支柱 《Scrum指南》重读有感(1)

Bruce Talk

Scrum 敏捷 随笔 Agile

模块四:课后作业

黄先生

架构训练营

行车数据上链,国产汽车很上道

CECBC

10年后,区块链的世界将会变成什么样子?

CECBC

架构实战训练营 - 模块4 - 作业

Presley

系统思考力建立3个简单操纵方法

风翱

系统性思考 5月日更

架构师实战营 模块四作业(设计千万级学生管理系统的考试试卷存储方案)

代廉洁

架构实战营

架构实战营模块4作业

En wei

架构实战营

<精益创业>读后感

Bruce Talk

敏捷 随笔 Agile

SaaS的前世、今生与未来[下篇]

LigaAI

SaaS

perf + 火焰图用法 小结

hashyong

程序员 架构 5月日更 perf

一文看懂 slice

Rayjun

Go 语言

你习惯写注释吗?

ES_her0

5月日更

下周极客时间课程学习计划

IT蜗壳-Tango

5月日更

数据挖掘从入门到放弃(三):朴素贝叶斯

数据社

机器学习 5月日更

小谈音视频质量检测

箭上有毒

音视频 5月日更

🍃【Spring原理系列】让你知道真正的“AOP”

码界西柚

spring aop 面向切面 spring aop 5月日更

MySQL 数据库学习笔记(2)

lenka

5月日更

cri-o技术探秘3

xumc

Docker 容器 cri-o pinns

zstd c++ string 压缩&解压

hashyong

c++ 程序员 架构 5月日更 zstd

我的Serverless实战—玩转腾讯云Wordpress

liuzhen007

Serverless 5月日更

网络攻防学习笔记 Day16

穿过生命散发芬芳

5月日更 网络攻防

垄断

小天同学

商业 市场垄断 5月日更

IOS端音频的采集与播放

floer rivor

音视频

用 Python 打印九九乘法表 - DAY7

Qien Z.

Python 5月日更

K8s二开之 client-go 初探

雪雷

Kubernetes Go 语言

《Redis入门指南(第 2 版)》读后感

codists

redis

Webpack 创始人推出比Webpack“快700倍”的Turbopack,基于Rust编写_语言 & 开发_Tina_InfoQ精选文章