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

Vite 4.3 正式發布,速度全面提升!

開發 前端
Vite會將所有接收到的URL和路徑解析為目標模塊。在 Vite 4.2 中,存在很多冗余的解析邏輯和不必要的模塊搜索。為了減少計算和文件系統調用,Vite 4.3 使解析邏輯更簡單、更嚴格和更準確。

4 月 20 日,Vite 4.3 正式發布。在這個版本中,Vite 團隊專注于改進  devServer 的性能。簡化了解析邏輯,優化了熱路徑,并對查找 package.json、TS 配置文件和一般解析 URL 實現了更智能的緩存。與 Vite 4.2 相比,這個版本的速度得到了全面提升!

性能提升

以下是性能改進的具體數據,由 sapphi-red/performance-compare 測試得出,該測試會以 1000 個 React 組件測試應用的冷啟動和熱啟動時間以及根節點和葉節點組件的 HMR 時間:

Vite (babel)

Vite 4.2

Vite 4.3

改進

開發冷啟動

17249.0ms

5132.4ms

-70.2%

開發熱啟動

6027.8ms

4536.1ms

-24.7%

根 HMR

46.8ms

26.7ms

-42.9%

葉 HMR

27.0ms

12.9ms

-52.2%

Vite (swc)

Vite 4.2

Vite 4.3

改進

開發冷啟動

13552.5ms

3201.0ms

-76.4%

開發熱啟動

4625.5ms

2834.4ms

-38.7%

根 HMR

30.5ms

24.0ms

-21.3%

葉 HMR

16.9ms

10.0ms

-40.8%

圖片

圖片

此性能運行的規格和版本:

  • CPU:Ryzen 9 5900X,內存:DDR4-3600 32GB,SSD:WD Blue SN550 NVME SSD
  • Windows 10 專業版 21H2 19044.2846
  • Node.js 18.16.0
  • Vite 和 React 插件版本
  • Vite 4.2 (babel): Vite 4.2.1 + plugin-react 3.1.0
  • Vite 4.3 (babel): Vite 4.3.0 + plugin-react 4.0.0-beta.1
  • Vite 4.2 (swc): Vite 4.2.1 + plugin-react-swc 3.2.0
  • Vite 4.3 (swc): Vite 4.3.0 + plugin-react-swc 3.3.0

Vite 團隊將繼續致力于提升 Vite 的性能,正在為 Vite 開發一個官方基準測試工具,以獲得每個 Pull Request 的性能指標。vite-plugin-inspect 現在有更多與性能相關的功能,可以幫助開發者確定哪些插件或中間件是應用性能的瓶頸。頁面加載后使用 vite --profile(然后按 p)將保存 devServer 啟動的 CPU 配置文件。可以在應用中將它們作為 speedscope 打開以識別性能問題。

接下來,Vite 團隊決定今年做一個 Vite 主版本,以配合 9 月 Node.js 16 的 EOL,放棄對 Node.js 14 和 16 的支持。

為什么 Vite 4.3 這么快?

更智能的解析策略

Vite會將所有接收到的URL和路徑解析為目標模塊。在 Vite 4.2 中,存在很多冗余的解析邏輯和不必要的模塊搜索。為了減少計算和文件系統調用,Vite 4.3 使解析邏輯更簡單、更嚴格和更準確。

更簡單的解析

Vite 4.2嚴重依賴 resolve 包來解析依賴的 package.json,查看 resolve 的源碼發現解析 package.json 時有很多無用的邏輯。Vite 4.3 摒棄了 resolve,遵循更簡單的 resolve 邏輯:直接檢查嵌套父目錄中是否存在 package.json。

更嚴格的解析

Vite 必須調用 Nodejs fs API 來查找模塊。但是 IO 很昂貴。Vite 4.3 縮小了文件搜索范圍,并跳過搜索一些特殊路徑,以盡可能減少 fs 調用。例如:

  1. 由于 # 符號不會出現在 URL 中,用戶可以控制源文件路徑中沒有 # 符號,因此 Vite 4.3 不再檢查用戶源文件中帶有 # 符號的路徑,而是僅在 node_modules 中搜索它們。
  2. 在Unix系統中,Vite 4.2 會先檢查根目錄下的每一個絕對路徑,對大多數路徑都可以,但是如果絕對路徑以根開頭就很容易失敗。為了在 /root/root 不存在的情況下跳過搜索 /root/root/path-to-file,Vite 4.3 會在開頭判斷 /root/root 作為目錄是否存在,并預先緩存結果。
  3. 當 Vite 服務器收到 @fs/xxx? 和 @vite/xxx 時,就不需要再解析這些 URL。Vite 4.3 直接返回之前緩存的結果,不再重新解析。

更準確的解析

Vite 4.2 在文件路徑為目錄時遞歸解析模塊,會導致不必要的重復計算。Vite 4.3 將遞歸解析扁平化,并對不同類型的路徑應用適當的解析,展平后緩存一些 fs 調用也更容易。

包解析

Vite 4.3 打破了解析 node_modules 包數據的性能瓶頸。Vite 4.2 使用絕對文件路徑作為包數據緩存鍵。這還不夠,因為 Vite 必須遍歷 pkg/foo/bar? 和 pkg/foo/baz 中的同一個目錄。

Vite 4.3 不僅使用了絕對路徑(/root/node_modules/pkg/foo/bar.js? & /root/node_modules/pkg/foo/baz.js?),還使用了遍歷目錄(/root/node_modules/pkg/foo? & /root/node_modules/pkg?) 作為 pkg 緩存的鍵。

另一種情況是,Vite 4.2 在單個函數中查找深層導入路徑的 package.json?,例如 Vite 4.2 解析 a/b/c/d? 等文件路徑時,首先檢查根 a/package.json? 是否存在, 如果沒有,則按照a/b/c/package.json? -> a/b/package.json?的順序查找最近的package.json?,但事實是查找根package.json?和最近的package.json?應該分開處理 ,因為在不同的解析上下文中需要它們。Vite 4.3 將根 package.json? 和最近的 package.json 解析分成兩部分,這樣它們就不會混在一起。

fs.realpathSync 問題

Nodejs 中有一個有趣的 realpathSync 問題,它指出 fs.realpathSync? 比 fs.realpathSync.native? 慢 70 倍。但 Vite 4.2 僅在非 Windows 系統上使用 fs.realpathSync.native?,因為它在 Windows 上的行為不同。為了解決這個問題,Vite 4.3 在 Windows 上調用 fs.realpathSync.native 時添加了網絡驅動器驗證。

非阻塞任務

作為一個按需服務,Vite dev server 可以在沒有準備好所有東西的情況下啟動。

非阻塞 tsconfig 解析

Vite 服務器在預綁定 ts 或 tsx 時需要 tsconfig 數據。

Vite 4.2 在服務端啟動之前,在插件鉤子 configResolved? 中等待 tsconfig? 數據解析完成。一旦服務器啟動而沒有準備好 tsconfig? 數據,頁面請求就可以訪問服務器,即使請求可能需要稍后等待 tsconfig 解析。

Vite 4.3 會在服務器啟動前初始化 tsconfig? 解析,但服務器不會等待。解析過程在后臺運行。一旦有ts相關的請求進來,就得等tsconfig解析完了。

非阻塞文件處理

Vite 中有大量的 fs 調用,其中一些是同步的。這些同步 fs 調用可能會阻塞主線程。Vite 4.3 將它們改為異步。此外,并行化異步函數也更容易。關于異步函數,可能有許多 Promise 對象在解析后要釋放。由于更智能的解析策略,釋放 fs-Promise 對象的成本要低得多。

HMR 防抖

考慮兩個簡單的依賴鏈 C <- B <- A & D <- B <- A,當 A 被編輯時,HMR 將從 A 傳播到 C 和 A 傳播到 D。這導致 A 和 B 在 Vite 4.2 中被更新兩次。

Vite 4.3 緩存了這些遍歷的模塊,以避免多次搜索它們,它適用于由 git checkout 觸發的 HMR。

并行化

并行化始終是獲得更好性能的好選擇。在 Vite 4.3 中,我們并行化了一些核心功能,包括導入分析、提取 deps 的導出、解析模塊 url 和運行批量優化器。

Javascript 優化

用回調替換 *yield

Vite 使用 tsconfck? 來查找和解析 tsconfig? 文件。tsconfck? 曾經通過 *yield? 遍歷目標目錄,生成器的一個缺點是它需要更多的內存空間來存儲它的生成器對象,并且在運行時會有大量的生成器上下文切換。所以從 v2.1.1 開始在核心中用回調替換 ??*yield??。

使用 === 代替 startsWith 和 endsWith

Vite 4.2 使用 startsWith? 和 endsWith? 檢查熱更新 URL 中的頭部和尾部 '/'。比較 str.startsWith('x')? 和 str[0] === 'x'? 的執行基準發現,===? 比 startsWith? 快約 20%,endsWith 比 === 慢約 60%。

避免重復創建正則表達式

Vite 需要很多正則表達式來匹配字符串,其中大部分都是靜態的,因此只使用它們的單例會更好。Vite 4.3 將正則表達式提升,以便可以重復使用它們。

放棄生成自定義錯誤

在 Vite 4.2 中,有一些自定義錯誤以改進開發體驗。這些錯誤可能會導致額外的計算和垃圾回收,從而降低 Vite 的速度。在 Vite 4.3 中,放棄了生成某些熱更新自定義錯誤(例如 package.json NOT_FOUND 錯誤),直接拋出原始錯誤以獲得更好的性能。

參考資料:

  • https://vitejs.dev/blog/announcing-vite4-3.html。
  • https://sun0day.github.io/blog/vite/why-vite4_3-is-faster.html。
責任編輯:姜華 來源: 前端充電寶
相關推薦

2023-04-10 09:15:25

Vite 4.3SWC 插件

2013-05-22 09:20:42

Chrome 27瀏覽器

2023-09-20 10:14:03

Next.js前端

2011-03-03 13:34:45

iTunes 10.2iOS 4.3

2011-03-04 10:37:10

iOS 4.3GM版本

2013-05-17 15:59:23

GoogleGoogle Play

2025-10-11 08:51:41

Vite PlusReactVite+

2010-01-26 09:46:16

2011-03-03 03:48:29

iOS蘋果iPad

2015-11-03 13:55:52

Linux 4.3內核Linux

2009-02-17 09:54:34

2014-10-29 15:11:35

Cocos Studi

2013-11-08 09:48:50

IEIE11

2022-12-09 19:00:02

Vite兼容性BigInt

2025-07-09 11:20:38

Vite生態統一工具

2025-06-30 07:50:00

Vite 7開發前端

2020-11-28 18:17:04

PHPPHP 8.0版本發布

2022-07-17 06:48:39

Vite 3.0前端工具鏈

2009-08-04 08:55:54

Apache Wick

2025-05-27 01:55:00

TypeScript開發者項目
點贊
收藏

51CTO技術棧公眾號

加勒比av在线播放| 欧美一级片在线播放| 熟女人妇 成熟妇女系列视频| 国产免费av在线| 美女一区二区视频| 中文字幕少妇一区二区三区| 国产精品久久久久久久久电影网| 蜜桃久久一区二区三区| 久久一区二区三区超碰国产精品| 在线成人中文字幕| 极品人妻一区二区| 欧美gay视频| 亚洲人成7777| 欧美极品jizzhd欧美| 国产孕妇孕交大片孕| 亚洲久久成人| 久久久极品av| 亚洲国产av一区| 亚洲精品观看| 在线观看www91| 日韩精品一区二区三区四| 国产视频网址在线| 不卡电影一区二区三区| 国产精品黄视频| 久久久久久av无码免费网站| 精品视频国产| 精品日韩欧美在线| 一级片视频免费观看| 国产白浆在线免费观看| 成人一区二区视频| 国产精品入口免费视频一| 亚欧洲精品在线视频| 国产精品7m凸凹视频分类| 精品一区二区三区四区在线| 久久综合桃花网| 久久91视频| 日本丰满少妇一区二区三区| 日韩av在线一区二区三区| yjizz国产| 国内在线观看一区二区三区| 日韩一区二区电影| 性chinese极品按摩| 性爽视频在线| 久久青草欧美一区二区三区| 国产高清自拍一区| www日韩精品| 蜜桃一区二区三区| 亚洲国产精品系列| 成年女人免费视频| 视频一区中文字幕精品| 3atv在线一区二区三区| 奇米影视四色在线| 懂色aⅴ精品一区二区三区| 五月婷婷色综合| 亚洲成人第一| 国产视频网站在线| 久久久久久久久久久黄色| 久久精品国产理论片免费| 蜜桃视频污在线观看| 成人黄色一级视频| 国产一区二区久久久| 高h震动喷水双性1v1| 国产成人精品亚洲午夜麻豆| 99re热精品| 日本高清视频免费观看| 成人性生交大片免费看视频在线| 国产精品乱码一区二区三区| 日本高清视频www| 91免费国产在线| 日本一区二区三区免费观看| 97人人在线| ㊣最新国产の精品bt伙计久久| 致1999电视剧免费观看策驰影院| 欧美13一16娇小xxxx| 自拍偷自拍亚洲精品播放| 中文字幕一区二区三区有限公司| 97影院秋霞午夜在线观看| 亚洲最新视频在线观看| 国内精品视频一区二区三区| 亚洲精品88| 欧美午夜精品久久久久久超碰 | av蓝导航精品导航| 男人天堂综合网| 久久综合久久鬼色中文字| 四虎影视永久免费在线观看一区二区三区 | 国产成人免费在线观看视频| 欧美成人aaa| 欧美一区二区在线免费播放 | jizz国产在线| 国内精品伊人久久久久av一坑| 99热在线国产| 黄色在线播放| 亚洲欧美激情一区二区| 日韩av免费电影| 麻豆视频网站在线观看| 亚洲高清视频在线| 高清一区二区视频| 66精品视频在线观看| 亚洲欧美激情精品一区二区| 国产探花在线视频| 99综合在线| 国产日韩欧美影视| 色一情一乱一区二区三区| 国产欧美视频在线观看| 青青草视频在线视频| 免费av在线| 午夜精品成人在线视频| 国产九九在线视频| 国产精品超碰| 日韩一区视频在线| 三级黄色在线视频| 国产呦萝稀缺另类资源| 欧美日韩一区二区视频在线| 50度灰在线| 欧洲av一区二区嗯嗯嗯啊| 中文在线字幕观看| 久久性感美女视频| 欧美亚洲免费电影| 亚洲成人第一区| 国产精品久久久久久久裸模| 日本不卡在线观看视频| 国产一区二区三区视频在线| 91精品国产色综合久久不卡蜜臀| 国产黄色网址在线观看| 欧美日韩精品| 国产一区香蕉久久| 欧美美女色图| 精品国产老师黑色丝袜高跟鞋| 色黄视频免费看| 日韩国产一区二区| 热久久视久久精品18亚洲精品| 亚洲风情第一页| 亚洲欧美一区二区三区国产精品| 高清一区二区视频| 精品高清久久| 国产成人拍精品视频午夜网站| 日韩永久免费视频| 亚洲影视在线观看| 国产人妻精品久久久久野外| 日韩久久久久| 国产精品一区二区三区久久久| 日本福利在线观看| 国产亚洲精品久| 国产黄色一级网站| 牛牛精品成人免费视频| 欧美激情一二三| 性生活视频软件| 伊人婷婷欧美激情| 青娱乐精品在线| 一本一本久久a久久综合精品| 国产欧美一区二区三区久久| lutube成人福利在线观看| 国产欧美一区二区在线观看| 91动漫在线看| 农村少妇一区二区三区四区五区| 国内精品久久久久久影视8| 东京干手机福利视频| 亚洲一二三区在线观看| 黄色国产在线视频| 亚洲久色影视| 欧美大香线蕉线伊人久久国产精品| 韩国成人二区| 亚洲欧美一区二区精品久久久| 日本一区二区三区精品| 久久久亚洲精品一区二区三区| 亚洲精品乱码久久久久久自慰| 网红女主播少妇精品视频| 欧美一区二区三区图| 好男人免费精品视频| 欧美性xxxxxx少妇| 少妇人妻丰满做爰xxx| 中文亚洲欧美| 亚洲va欧美va在线观看| av文字幕在线观看| 欧美不卡一区二区| 天天综合网入口| 国产偷国产偷精品高清尤物| 色婷婷成人在线| 98精品视频| 国产精品二区在线观看| 亚洲天堂av影院| 国产亚洲欧洲在线| 国产成人精品一区二三区| 久久综合久久久久88| 色国产在线视频| 欧美午夜一区| 日本免费高清一区二区| 国产成人精选| 欧美激情一区二区三区成人| 日本黄在线观看| 717成人午夜免费福利电影| 久久精品www人人爽人人| 91免费视频观看| 亚洲美女性囗交| 日韩亚洲国产欧美| 亚洲一区二区不卡视频| 91精品短视频| 国产精品扒开腿做爽爽爽视频| 麻豆视频在线播放| 日韩成人在线观看| 国产又黄又大又粗的视频| 亚洲成av人**亚洲成av**| 黄色片在线观看免费| 国产91精品一区二区| 精品少妇无遮挡毛片| 欧美在线免费一级片| 日韩电影在线播放| 91精品入口| 国产美女搞久久| 天堂а√在线最新版中文在线| 色老头一区二区三区在线观看| 手机看片1024国产| 欧美一区二区福利在线| 无码人妻丰满熟妇区五十路| 一区二区成人在线视频| 亚洲一级黄色录像| 99精品国产99久久久久久白柏| 久久久精品高清| 视频一区视频二区中文| 日韩精品一区二区免费| 99国产精品一区二区| 免费久久久一本精品久久区| 136国产福利精品导航网址应用| 国产精品久久久91| 秋霞伦理一区| 亚洲免费视频观看| 亚洲乱色熟女一区二区三区| 精品婷婷伊人一区三区三| 国产又爽又黄的视频| 亚洲午夜免费福利视频| 91精品一区二区三区蜜桃| 欧美激情一二三区| 欧美色图亚洲激情| 狠狠色伊人亚洲综合成人| 天天操天天爱天天爽| 免费中文字幕日韩欧美| 久久国产精品网| 欧美日韩亚洲一区三区| mm131午夜| 午夜精品一区二区三区国产| 亚洲乱码一区二区三区三上悠亚| 亚洲另类春色校园小说| 黄色99视频| 好吊妞国产欧美日韩免费观看网站| 91九色视频在线观看| 国产精品国产亚洲精品| 国产欧美久久久久久| 小明成人免费视频一区| 久久人人爽人人爽人人片亚洲| 最新国产在线观看| 中文字幕日韩专区| 日本网站在线免费观看视频| 中文在线资源观看视频网站免费不卡 | 密臀av在线| 九九久久久久99精品| 成人国产免费电影| 欧美精品少妇videofree| 久久亚洲天堂| 欧美成人在线免费视频| 永久免费网站在线| 欧美极品第一页| 国模精品视频| 国产成人黄色av| 欧美日韩精品免费观看视欧美高清免费大片| 日本国产高清不卡| 99久久精品一区二区成人| 国产日韩欧美自拍| 欧美区一区二区| 国产一区免费观看| 一本久久青青| 99亚洲精品视频| 欧美日韩99| 日韩少妇内射免费播放| 久久久久国产精品午夜一区| 在线免费av播放| 黄页网站大全一区二区| 国产sm在线观看| 99国产欧美另类久久久精品| 91网站免费入口| 成人免费小视频| 日本少妇毛茸茸高潮| 色又黄又爽网站www久久| 中文字幕 亚洲视频| 亚洲第一狼人社区| 日韩一区二区视频在线| 欧美日韩在线一区二区| jizz国产视频| 国产视频一区在线| 日韩毛片久久久| 欧美激情一区二区三区久久久 | 天天综合天天做天天综合| 欧美一区二区三区网站| 欧美精品三级在线观看| 日韩国产亚洲欧美| 欧美一区二区成人| 欧美婷婷久久五月精品三区| 色老头一区二区三区| www.超碰在线| 国产又爽又黄的激情精品视频 | 蜜桃久久精品一区二区| 爱情岛论坛亚洲自拍| 久久影院电视剧免费观看| 99热这里只有精品4| 五月天精品一区二区三区| 亚洲综合精品国产一区二区三区| 精品国产青草久久久久福利| 国产福利小视频在线观看| 欧美激情精品久久久| 成人精品动漫| 久久精品国产一区二区三区不卡| 888久久久| 成人小视频在线看| 成人午夜私人影院| 99热6这里只有精品| 精品欧美aⅴ在线网站| 国产日产亚洲系列最新| 一本久久综合亚洲鲁鲁| 黄色污污视频在线观看| 国产精品最新在线观看| 妖精一区二区三区精品视频| 国产九色porny| 国产在线观看一区二区| 一级片视频免费看| 午夜精品一区二区三区电影天堂 | 精品一区二区国语对白| 欧美色图亚洲激情| 午夜精品影院在线观看| www.成人精品| 日韩视频免费观看| 毛片免费看不卡网站| 国精产品一区二区| 国产精品www994| 成年人性生活视频| 亚洲欧洲精品一区二区精品久久久 | 欧美在线免费一级片| 午夜福利123| 国产精品灌醉下药二区| 久草视频在线免费| 国产网站欧美日韩免费精品在线观看| av在线小说| 国产精品日韩欧美一区二区三区| 欧美激情一区| 性色av浪潮av| 亚洲网友自拍偷拍| www.成人免费视频| 色综合视频网站| 日韩欧洲国产| 欧美国产综合在线| 国产成人av一区二区三区在线| 国产性xxxx| 欧美成人video| 123区在线| 精品国产乱码久久久久久郑州公司| 亚洲图片在线| 日韩免费高清一区二区| 性做久久久久久免费观看欧美| 黄色aaa大片| 97国产精品久久| 亚洲大片精品免费| av免费网站观看| 亚洲国产成人私人影院tom| 在线观看国产一区二区三区| 日韩在线观看网站| 99er精品视频| 91网站在线观看免费| 北条麻妃一区二区三区| 亚洲国产综合久久| 亚洲欧洲第一视频| 8av国产精品爽爽ⅴa在线观看| 亚洲天堂av免费在线观看| 韩国精品在线观看 | 色综合天天综合色综合av | 亚洲国产精品二十页| 一道本无吗一区| 欧美另类精品xxxx孕妇| 精品亚洲精品| 黄色av免费在线播放| 中文字幕在线观看不卡视频| 国产成人麻豆精品午夜在线| 国内精品久久久久影院优| 亚洲美女久久| 午夜一区二区视频| 艳妇臀荡乳欲伦亚洲一区| 视频一区二区在线播放| 国产精品高清在线观看| 亚洲精品2区| 我和岳m愉情xxxⅹ视频| 欧美三级视频在线观看| 香蕉久久aⅴ一区二区三区| 久久偷窥视频| 国产一区二区精品久久| 亚洲一区欧美在线| 自拍偷拍亚洲在线| 国产suv精品一区二区四区视频| 毛片av免费在线观看| 日韩美女视频19| 欧美日韩伦理片| 亚洲a级在线观看| 久久精品主播| 久久久久无码国产精品不卡|