The future is turbopack

2022-10-26 08:16:12 +08:00
 YadongZhang

https://vercel.com/blog/turbopack

10x Vite, 700x Webpack

盲猜 turbopack 的快和 Rust 这种类似 C/C++ 的底层语言多少有点关系,我没有依据,只是猜的

并且 Vite 只是依赖 esbuild 在 rebuild 的时候速度才有提升的:

https://storybook.js.org/blog/storybook-performance-from-webpack-to-vite/

turbopack 第一次构建的时候就可以有速度优化:Turbopack only bundles the minimum assets required in development

6173 次点击
所在节点    程序员
38 条回复
LengthMin
2022-10-26 08:25:56 +08:00
The secret to Turbopack's performance is twofold: highly optimized machine code and a low-level incremental computation engine that enables caching down to the level of individual functions. Once Turbopack performs a task it never does it again.

还做了一些缓存机制
theusername
2022-10-26 09:03:29 +08:00
看起来号称很快的原因在于按需打包和粒度很细的缓存,好炫酷
YadongZhang
2022-10-26 09:07:45 +08:00
@LengthMin
@theusername

Vite 也是这个思路,只不过 Turbopack 在第一次构建的时候就做了速度提升,tql
mywaiting
2022-10-26 09:11:25 +08:00
我倒是期待 JS 有一天能类似 TS 那样直接转码 /编译到 Rust ~

这样就无所谓啥速度了~

wasm 感觉已经很接近这个愿望了~
David1119
2022-10-26 09:27:56 +08:00
@mywaiting #4 wasmtime 来了。话说前端花活真多,所有基础设施都要用 rust 重写一遍么。。。。
hronro
2022-10-26 09:34:26 +08:00
@mywaiting #4 你要不要再看看你在说啥?
Nugine0
2022-10-26 09:39:36 +08:00
前端工具链领域的优化空间是真的大。用 Rust 写过一轮后,未来也不太可能有几百倍的速度提升了。换句话说,像这样悬殊的性能对比是空前绝后的。
swift
2022-10-26 09:42:41 +08:00
vite 已经落后了吗
churchill
2022-10-26 09:57:02 +08:00
Turbopack does not perform type checks on your application. We use SWC to compile TypeScript code, which also does not perform type checks.

又看到熟悉的句子了

每次各种所谓新一代打包工具 都要把带实时 lint ,type check 的 webpack 暴打一顿

正经事不干
liuzhaowei55
2022-10-26 10:02:17 +08:00
node lts 从 v16 升到 v18 了,大家快冲
thulof
2022-10-26 10:05:12 +08:00
将近两年前用 swc 跑 jest 的时候,打包产物还有很多 Bug ,基本不可用,不知道现在怎么样了
chloerei
2022-10-26 10:07:35 +08:00
文档连怎么单独安装都没有,不知道怎么试用。
Leviathann
2022-10-26 10:08:46 +08:00
@churchill 一个打包工具搞什么 lint typescheck 才是正经事不干瞎忙活
lululau
2022-10-26 10:25:42 +08:00
The future 不是 importmap 吗
otakustay
2022-10-26 10:30:18 +08:00
@churchill #9 这玩意暴打没 lint 和 typecheck 的 webpack 也是轻轻松松
YadongZhang
2022-10-26 10:32:41 +08:00
@chloerei

最低要求 Nextjs 13 ,然后 `next dev` 后面加参数 `--turbo`,我猜的,你可以试一下
chloerei
2022-10-26 10:38:43 +08:00
@YadongZhang 不用 next.js ,想知道怎么单独安装。npm 搜了 turbopack ,是个无关的包。现在的文档安装没说清楚,也没有配置说明,都是营销内容比竞品怎么怎么好,给我留下不好印象。
YadongZhang
2022-10-26 10:45:52 +08:00
@chloerei

目前只在 Nextjs v13 中可以用 turbopack

https://vercel.com/blog/turbopack

How fast is Turbopack? 前一句话
serco
2022-10-26 10:51:13 +08:00
@chloerei turbopack 目前只能 nextjs 用,turborepo 才能给其他项目用
mywaiting
2022-10-26 10:52:49 +08:00
@hronro #6 我知道自己说啥啊,清楚这个 turbopack 是个打包工具,清楚 vite 和 webpack~

就是,我只是顺便感慨了一下“速度”这个词而已~

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/889872

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX