精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

尤雨溪:Turbopack真的比Vite快10倍嗎?

開發 前端
在 Turbopack 官方文檔的基準圖中,最初顯示帶有 Turbopack 的 Next 13 能夠在 0.01 秒內執行 React Hot-Module Replacement (HMR,即熱更新),而對于 Vite,則需要 0.09 秒。

大家好,我是 CUGGZ。

10 月 25 日,Vercel 推出了下一代打包工具:Turbopack,它是基于 Rust 的 Webpack 繼任者,其文檔中提到,Turbopack 比 Vite 快 10 倍。11 月 1 日,Vue、Vite 作者尤雨溪發表文章 《Is Turbopack really 10x Faster than Vite?》,對 Turbopack 和 Vite 進行了測試對比,下面就來看看詳細內容吧!

在 Turbopack 官方文檔的基準圖中,最初顯示帶有 Turbopack 的 Next 13 能夠在 0.01 秒內執行 React Hot-Module Replacement (HMR,即熱更新),而對于 Vite,則需要 0.09 秒。上面也有冷啟動性能基準,但由于沒有一個冷啟動基準顯示出 10 倍的優勢,我們只能假設“快 10 倍”的說法是基于 HMR 性能。

Vercel 并沒有在文檔中包含指向他們用來生成這些結果的基準的任何鏈接。所以,尤大決定使用新發布的 Next 13 和 Vite 3.2 來驗證這些聲明。測試的要點是通過測量以下兩個時間戳之間的增量來比較 HMR 性能:

  • 修改源文件的時間,通過單獨的 Node.js 進程記錄文件更改;
  • 更新的 React 組件重新渲染的時間,通過Date.now() 調用直接記錄在組件的渲染輸出中。注意,此調用發生在組件的虛擬 DOM 渲染階段,因此它不受 React 協調或實際 DOM 更新的影響。

該基準還測量了兩種不同情況下的結果:

  • root:根組件,組件導入 1000 個不同的子組件并將它們一起渲染。
  • leaf:葉子組件,組件由根組件導入,但自己沒有導入組件(沒有子組件)。

細微差別

在測試這些之前,還有一些額外的細微差別值得一提:

  • Next 是否使用 React 服務端組件(RSC)。
  • Vite 是否使用 SWC 而不是 Babel 進行 React 轉換。

React 服務端組件

Next 13 引入了一個重大的架構轉變,現在的組件默認為服務端組件,除非用戶使用“use client”指令明確選擇客戶端模式。它不僅是默認設置,Next 文檔還建議用戶盡可能保持服務端模式,以提高最終用戶的性能。

第一輪測試(Next w/ RSC 和 Vite w/ Babel))

最初的基準測試是在服務端模式下使用根組件和葉子組件測量 Next 13 的 HMR 性能。結果表明,Next 13 在兩種情況下實際上都較慢,并且對于葉子組件而言差異顯著,測試方法和測試結果如下。

1、 測試方法

  1. 這兩個項目都是通過以下命令新創建的:
npx create-next-app@latest
npm init vite@latest # 選擇React預設
  1. 在每個項目中運行genFiles.(m)js 生成 1000 個組件,所有組件都被導入到應用的根組件中并一起渲染。
  2. 對于每個項目,在單獨的 Node 進程中運行watch.(m)js 以獲取文件更改的確切時間戳,這用于標記 HMR 的開始。
  3. 啟動項目,然后編輯以下文件以測試 HMR:
  • Next: app/page.js (根組件)  和 app/comp0.jsx (葉子組件)。
  • Vite: src/App.jsx (根組件) 和 src/components/comp0.jsx (葉子組件)。

已編輯的組件都在其輸出中包含 Date.now()。DOM 中最終渲染的時間戳用于標記 HMR 的完成。

2、測試結果

  • 記錄超過 5 次運行
  • 時間以毫秒為單位
  • 在 M1 Macbook Pro 上測試

圖片

第二輪測試(Next w/o RSC 和 Vite w/ Babel))

有人指出,應該在沒有 RSC(React 服務端組件)的情況下對 Next 組件進行基準測試以使其相等。因此,在 Next 根組件中添加了“use client”指令以選擇客戶端模式。事實上,在客戶端模式下,Next HMR 顯著改進,比 Vite 快 2 倍,測試方法和測試結果如下。

1、測試方法

  1. 這兩個項目都是通過以下命令新創建的:
npx create-next-app@latest
npm init vite@latest # 選擇React預設
  1. 在每個項目中運行genFiles.(m)js 以生成 1000 個組件。所有組件都被導入到應用的根組件中并一起渲染。
  2. 給 app/page.js 添加 use client 指令,使它以客戶端模式渲染。這是確保正確的比較所必需的,因為服務端組件會產生不小的 HMR 開銷(慢 4 倍)。
  3. 對于每個項目,在單獨的 Node 進程中運行watch.(m)js 以獲取文件更改的確切時間戳。這用于標記 HMR 的開始。
  4. 啟動項目,然后編輯以下文件以測試 HMR:
  • Next: app/page.js (根組件)  和 app/comp0.jsx (葉子組件)。
  • Vite: src/App.jsx (根組件) 和 src/components/comp0.jsx (葉子組件)。

2、測試結果

  • 記錄超過 5 次運行
  • 時間以毫秒為單位
  • 在 M1 Macbook Pro 上測試

圖片

SWC 與 Babel 轉換

我們的目標是讓基準只關注 HMR 性能差異,所以需要消除另一個變量:Vite 的默認 React 預設使用 Babel 來轉換 React HMR 和 JSX。

React HMR 和 JSX 轉換不是與構建工具耦合的特性,它可以通過 Babel(基于 JavaScript)或 SWC(基于 Rust)來完成。Esbuild 也可以轉換 JSX,但缺乏對 HMR 的支持。SWC 比 Babel 快得多(單線程時快 20 倍,多核時快 70 倍)。Vite 目前默認使用 Babel 的原因是安裝大小和實用性之間的權衡。SWC 的安裝量相當大(node_modules 中有 58 MB,而 Vite 只有 19 MB),并且許多用戶仍然依賴 Babel 進行其他轉換,因此 Babel 對他們來說是不可避免的。但是,這種情況在未來可能會發生改變。

Vite core 并不依賴 Babel,因此使用 SWC 而不是 Babel 來處理 React 轉換不需要在 Vite 中進行任何更改,只需將默認的 React 插件替換為 vite-plugin-swc-react-refresh。切換后可以看到,Vite 在根組件中有顯著提升,趕上了 Next:

圖片

有趣的是,這里的增長曲線顯示 Next/turbo 在根組件比葉子組件中慢 4 倍,而 Vite 只慢 2.4 倍。這意味著 Vite HMR 在更大的組件中可伸縮性更好。此外,切換到 SWC 還可以改善 Vite 在 Vercel 基準測試中的冷啟動指標。

不同硬件上的性能

由于這是一個涉及 Node.js 和原生 Rust 部分的復合基準測試,因此在不同的硬件上會有很大差異。以上結果是在 M1 MacBook Pro 上收集的。其他用戶在不同的硬件上運行相同的基準測試并報告了不同的結果。在某些情況下,Vite 在根組件情況下更快,而在其他情況下,Vite 在兩種情況下都明顯更快。

Vercel 的澄清

在尤大發布了自己的基準后,Vercel 發布了一篇博客文章,闡明了他們的基準方法,并將他們的基準提供給公眾驗證。閱讀文章和基準代碼后,以下是一些關鍵點:

  • Vite 實現仍然使用默認的基于 Babel 的 React 插件。
  • 1000 個組件案例的原始數字存在舍入問題——Turbopack 的 15ms 被舍入到 0.01s,而 Vite 的 87ms 被舍入到 0.09s。當原始數字接近 6 倍時,這進一步被宣傳為 10 倍的優勢。
  • Vercel 的基準測試使用更新模塊的“瀏覽器評估時間”作為結束時間戳,而不是 React 組件重新渲染時間。
  • 文章中的圖表顯示,當總模塊數超過 30k 時,Turbopack 可以比 Vite 快 10 倍。

總而言之,如果以下所有條件都成立,“比 Vite 快 10 倍”的說法是成立的:

  • Vite 沒有使用相同的 SWC 轉換。
  • 應用包含超過 30k 個模塊。
  • 基準測試只測量熱更新模塊的評估時間,而不是實際應用更改的時間。

什么是“公平”比較?

如果我們要比較的是“開箱即用的默認設置”,那么我們應該與 Next 中啟用的 RSC 進行比較,因為這是默認設置,也是 Next 積極鼓勵用戶使用的。由于 Vercel 的基準測試沒有使用 RSC,并且正在測量“模塊評估時間”,以排除 React 的 HMR 運行時引起的差異,因此可以公平地假設基準測試的目標是對 Vite 和 Turbopack 固有的 HMR 機制進行比較。

不幸的是,在這個前提下,Vite 仍然在基準測試中使用 Babel 使這個對比是不平等的。在 Vite 中使用 SWC 進行轉換更新對比結果之前,Turbopack 比 Vite 快 10 倍的結論是不準確的。

此外,我相信大多數人都會同意:

  • 對于絕大多數用戶來說,30k 模塊是極不可能的情況。使用 SWC 的 Vite,達到 10 倍要求所需的模塊數量可能會變得更加不切實際。雖然理論上是可行的,但用它來營銷 Turbopack 是不誠實的。
  • 與理論上的“模塊評估”時間相比,用戶更關心端到端 HMR 性能,即從保存到看到更改的時間。當看到“更新速度快 10 倍”時,普通用戶會想到前者而不是后者,Vercel 在其營銷中忽略了這一警告。實際上,Next 中服務端組件(默認)的端到端 HMR 比 Vite 中的慢。

作為 Vite 的作者,很高興看到像 Vercel 這樣資金雄厚的公司在改進前端工具方面進行了大量投資。在適用的情況下,甚至未來可能在 Vite 中利用 Turbopack。然而,開源工具的競爭應該建立在公開溝通、公平比較和相互尊重的基礎上,令人失望和擔憂的是,看到激進的營銷使用了精心挑選的、未經同行評審的、邊緣誤導性的數字,這些數字通常只在商業競爭中出現,相信 Vercel 可以做得更好。

相關鏈接

  • 原文:https://github.com/yyx990803/vite-vs-next-turbo-hmr/discussions/8。
  • 代碼:https://github.com/yyx990803/vite-vs-next-turbo-hmr。
責任編輯:姜華 來源: 前端充電寶
相關推薦

2022-11-08 15:19:49

軟件工具

2025-09-29 00:00:00

2025-10-29 01:00:00

2023-10-06 09:43:13

2024-10-09 14:07:05

2022-10-27 08:31:31

架構

2025-05-06 03:30:00

AIVueVite

2025-06-03 10:05:01

ViteVue 3.6前端

2024-03-06 07:28:23

Vue前端開發Vapor 模式

2024-03-08 08:40:25

2023-07-26 08:34:40

VueReact

2023-10-05 09:40:06

Next.jsTurbopackVite

2025-06-18 10:02:06

H3前端開發

2022-09-08 16:31:17

前端Web

2023-11-22 10:12:43

Sortablejs拖拽庫

2025-06-23 11:35:29

VormsVue 3代碼

2025-06-03 08:49:42

2025-03-11 00:42:10

2025-03-18 12:30:00

RubyJava語言

2025-05-06 13:44:17

Vue前端人工智能
點贊
收藏

51CTO技術棧公眾號

av在线电影院| 国产精品黄色大片| 四虎精品一区二区免费| 亚洲男同1069视频| 久热国产精品视频一区二区三区| 久久精品视频1| 日韩精品永久网址| 亚洲成色777777女色窝| 久久综合伊人77777麻豆最新章节| 暖暖日本在线观看| 97久久超碰国产精品| 国产99久久精品一区二区永久免费| 黄色裸体一级片| 久久久免费毛片| 欧美日韩精品系列| 久久久999视频| 国产网友自拍视频导航网站在线观看| www.视频一区| 97超级在线观看免费高清完整版电视剧| 中文字幕精品三级久久久 | 国产精品18久久久久久久久| 欧美一级成年大片在线观看| 国产一二三区精品| 亚洲黄色录像| 亚洲精品在线网站| www.日本久久| 成人一区视频| 色综合久久久久久久久久久| 精品视频在线观看一区二区| 91露出在线| 国产亚洲1区2区3区| 俄罗斯精品一区二区| 亚洲自拍偷拍另类| 日韩成人午夜精品| 欧美一区二区色| 国产无遮挡又黄又爽在线观看| 91成人超碰| 中文字幕亚洲情99在线| 三级电影在线看| 国内精品免费| 亚洲第一男人av| 国产成人精品一区二区三区在线观看 | 中文字幕亚洲电影| 亚洲日本精品国产第一区| 你懂的视频在线免费| 91在线云播放| 久久99精品久久久久久秒播放器 | 欧美精品videos另类日本| 日韩在线不卡av| 色无极亚洲影院| 中文字幕日韩精品有码视频| 性欧美一区二区| 国产麻豆一区二区三区精品视频| 亚洲男人天堂古典| 美女久久久久久久久久| 免费看av成人| 亚洲欧洲偷拍精品| x88av在线| 不卡中文字幕| www.欧美精品| 好吊色视频在线观看| 中文字幕免费精品| 欧美高清视频在线播放| 精品小视频在线观看| 伊人久久综合| 97超级碰碰碰久久久| 日本午夜视频在线观看| 久久久久久久波多野高潮日日| 日本亚洲欧洲色| 啪啪小视频网站| 精品一区二区三区香蕉蜜桃| 亚洲综合色激情五月| www.日韩高清| 91香蕉视频在线| 五月天久久狠狠| 国产在线激情| 欧美日韩精品二区| 不卡av免费在线| 国产亚洲高清在线观看| 精品国产成人在线影院 | 国产综合在线播放| 99这里都是精品| 日韩在线电影一区| 国产成人短视频| f2c人成在线观看免费视频| 一区二区三区四区激情| 日本a在线天堂| 亚洲天堂免费电影| 欧美三级三级三级爽爽爽| 手机免费看av网站| 国产一区丝袜| 视频在线观看99| 久久婷婷国产麻豆91| 国产日韩一区二区三区在线播放| 国产第一区电影| 精品黑人一区二区三区国语馆| 成人高清免费观看| 亚洲国产综合自拍| 欧美理论片在线播放| 欧美性高潮床叫视频| 毛葺葺老太做受视频| 国产亚洲观看| 一区二区中文字幕| 性色av无码久久一区二区三区| 激情国产一区| 国产欧美韩国高清| 亚洲 欧美 激情 小说 另类| 中文字幕在线观看不卡| 欧美一区二区中文字幕| 色综合久久久| 精品一区二区三区电影| 国产大学生自拍| 热久久一区二区| 国产视频精品网| 国产午夜精品久久久久免费视| 欧美性猛交xxxx乱大交3| www.51色.com| 不卡一区2区| 欧美在线激情网| 亚洲精品福利网站| 日韩一区中文字幕| 久草综合在线观看| 欧美人与动xxxxz0oz| 欧美精品免费在线| 亚洲综合免费视频| 国产亚洲精品7777| 免费av网址在线| 久久久久观看| 久久青草精品视频免费观看| 99精品人妻无码专区在线视频区| 国产女人水真多18毛片18精品视频| 欧美成人三级在线视频| 一区二区三区视频免费视频观看网站| 久久久999精品免费| 黄色网址中文字幕| 久久久亚洲综合| 国产精品日韩三级| 日本精品在线播放| 久久精品亚洲热| 97成人在线观看| 国产精品青草久久| 中文字幕有码av| 精品久久国产| 国产精品高潮在线| 粉嫩一区二区三区国产精品| 日韩欧美在线视频免费观看| 一本加勒比波多野结衣| 亚洲精品视频啊美女在线直播| 成人av电影免费| 超免费在线视频| 亚洲黄页网在线观看| 国产精品第9页| 91丨porny丨户外露出| 日韩久久一级片| 久久最新网址| 国产精品免费在线免费| 一级毛片视频在线| 7777精品伊人久久久大香线蕉的 | 日本亚洲一区二区三区| 亚洲精品888| 99国产高清| 美女的胸无遮挡在线观看| 亚洲精品自在久久| 这里只有久久精品视频| 国产精品日韩精品欧美在线| 欧美一级免费在线| 精品999日本| 欧美日本亚洲| 久久av影院| 色综合91久久精品中文字幕| 后进极品白嫩翘臀在线视频| 欧美日韩午夜剧场| 妖精视频在线观看免费| 久久99精品国产麻豆婷婷 | 欧美hdxxx| 日韩成人在线播放| 国产九色91回来了| 亚洲免费av网站| 久草视频福利在线| 久久精品伊人| 日本一区二区免费高清视频| 一区二区视频| 国产国语刺激对白av不卡| 欧美jizz18hd性欧美| 精品日韩一区二区三区免费视频| 日本三级一区二区| 国产精品天美传媒沈樵| 极品人妻一区二区| 葵司免费一区二区三区四区五区| 亚洲一二三区在线| 国产精品久久久网站| 国产精品第七十二页| a毛片在线看免费观看| 亚洲另类图片色| a级片在线视频| 色拍拍在线精品视频8848| 精品欧美一区二区久久久久| 久久综合一区二区| 日本亚洲一区二区三区| 久久一二三四| 免费一级淫片aaa片毛片a级| 国产探花在线精品一区二区| 99高清视频有精品视频| 成人一级视频| 2021久久精品国产99国产精品| 免费黄色网页在线观看| 日韩久久免费视频| 国产高清免费av| 欧美亚洲一区二区三区四区| xxxxxx国产| 日韩美女视频一区二区| 国产免费看av| 99久久国产综合精品色伊| 日本在线观看视频一区| 日本亚洲视频在线| 日本欧美黄色片| 午夜精品剧场| 亚洲精品第一区二区三区| 亚洲影院天堂中文av色| 51精品国产人成在线观看| 成人一区视频| 日本亚洲欧美三级| 手机av在线| 久久久久久尹人网香蕉| 国产美女av在线| 最新亚洲国产精品| 精品亚洲成a人片在线观看| 亚洲国产精品久久久久秋霞不卡| 成人av免费播放| 91精品在线麻豆| 亚洲天堂中文在线| 欧美亚洲高清一区二区三区不卡| 精品人妻无码一区二区性色| 亚洲国产精品精华液网站| 四虎永久免费在线| 亚洲图片欧美激情| 久久国产波多野结衣| 国产精品久线在线观看| 欧美丰满美乳xxⅹ高潮www| 久久美女高清视频| 在线免费观看a级片| 不卡视频免费播放| 呦呦视频在线观看| 成人av网站在线| 一女三黑人理论片在线| jlzzjlzz国产精品久久| 小毛片在线观看| 不卡的av中国片| 最近中文字幕无免费| 91麻豆精品视频| 微拍福利一区二区| 国产精品天干天干在观线| 三年中国中文观看免费播放| 国产日韩一级二级三级| 免费黄色在线网址| 综合亚洲深深色噜噜狠狠网站| 日韩精品一区二区亚洲av性色| 亚洲免费资源在线播放| 青青草国产在线观看| 亚洲一区在线视频| 精品欧美一区二区三区免费观看| 欧美日韩激情视频| 国产一级精品毛片| 欧美丰满少妇xxxxx高潮对白| 国产日韩欧美视频在线观看| 日韩欧美成人一区| 天天操天天干天天舔| 精品无人区乱码1区2区3区在线| 蝌蚪视频在线播放| 精品国内产的精品视频在线观看| 1769免费视频在线观看| 2018日韩中文字幕| 亚洲精品一区三区三区在线观看| 成人免费福利视频| 精品久久ai| 亚洲国产欧美日韩| 欧美视频一区| 91在线视频观看免费| 国产一二三精品| 中文乱码人妻一区二区三区视频| 久久久久九九视频| 在线看的片片片免费| 精品久久久久国产| 在线播放一级片| 精品免费视频一区二区| 久久久久久女乱国产| 久久手机免费视频| caoporn视频在线| 国产中文日韩欧美| 国产精品xxxav免费视频| 日韩成人av网站| 欧美精品三区| 成人性生生活性生交12| 国产很黄免费观看久久| 国产一级久久久久毛片精品| 一区二区三区在线播放| 在线观看日本网站| 欧美v日韩v国产v| 成人午夜电影在线观看| 久久久久久亚洲精品不卡| 成人国产精选| 精品伦理一区二区三区| 国产精品久久久久久影院8一贰佰 国产精品久久久久久麻豆一区软件 | 日韩中文在线观看| 岛国av在线播放| 91在线免费网站| 精品日本12videosex| 国产综合中文字幕| 狠狠网亚洲精品| www.av天天| 亚洲成人资源在线| 国产精品嫩草影院精东| 亚洲天堂一区二区三区| 草草影院在线| 69174成人网| 三区四区不卡| 人妻丰满熟妇av无码区app| 成人少妇影院yyyy| 五月天婷婷色综合| 欧美三级中文字幕| 美女毛片在线看| 97视频在线观看成人| 欧美一级片网址| 中文字幕在线亚洲三区| 日本欧洲一区二区| theav精尽人亡av| 黄色精品在线看| xxxx国产精品| 欧美片一区二区三区| 国产高清日韩| 黄色网址在线免费看| 久久精品999| 亚洲不卡的av| 欧美日韩一二三区| 国产三区四区在线观看| 日韩美女毛茸茸| 国产成人影院| jizz欧美激情18| 国产精品欧美精品| 波多野结衣高清视频| 亚洲欧美日韩成人| 97成人资源| 日本欧美色综合网站免费| 香蕉亚洲视频| 亚洲最大成人综合网| 在线国产亚洲欧美| 在线免费黄色| 成人乱色短篇合集| 亚洲精品二区三区| 欧美性猛交xx| 亚洲一区二区视频在线| 蜜臀av午夜精品| 韩国精品久久久999| 欧美日韩导航| 成人午夜激情av| 中文字幕日韩av资源站| 精品久久久无码中文字幕| 欧美丰满少妇xxxx| 精品av导航| 人妻有码中文字幕| 中文字幕欧美激情一区| 91无套直看片红桃| 欧美日韩成人在线视频| 国产成人夜色高潮福利影视| 久久国产成人精品国产成人亚洲| 久久一区二区视频| 中文字幕日产av| 欧美大片免费看| 天堂在线精品| 日本 片 成人 在线| 亚洲精品久久7777| 视频午夜在线| 成人www视频在线观看| 国精品一区二区三区| av无码av天天av天天爽| 欧美亚洲图片小说| 欧美xxxx免费虐| 欧洲精品国产| 国产伦精品一区二区三区免费迷 | 久久99久久精品| 久久久久99精品成人片毛片| 精品无人区太爽高潮在线播放 | 五月天久久狠狠| 国产成人免费在线观看不卡| 久久久黄色大片| 久久这里只有精品99| 日本妇女一区| 亚洲精品免费一区亚洲精品免费精品一区 | 亚洲黄色免费观看| 日韩一级黄色av| 久久草在线视频| 色婷婷一区二区三区av免费看| 亚洲自拍另类综合| 成人福利在线| 国产精品一区二区三区四区五区| 日本在线不卡视频| 精品无码人妻一区二区三| 这里只有精品丝袜| 九九热hot精品视频在线播放| 亚洲欧美自拍另类日韩|