Skip to content

Доступен Vite 4.3!

20 апреля 2023

Обложка объявления Vite 4.3

Быстрые ссылки:

Улучшения производительности

В этом обновлении мы сосредоточились на улучшении производительности dev-сервера. Логика разрешения была оптимизирована, что улучшило горячие пути и реализовало более умное кэширование для поиска package.json, файлов конфигурации TS и разрешённых URL в целом.

Вы можете прочитать подробное описание выполненной работы по производительности в этом блоге одного из участников Vite: Как мы сделали Vite 4.3 значительно быстрее 🚀.

Этот спринт привел к улучшению скорости во всех аспектах по сравнению с Vite 4.2.

Вот улучшения производительности, измеренные с помощью sapphi-red/performance-compare, который тестирует приложение с 1000 компонентами React, время холодного и теплого старта dev-сервера, а также время HMR для корневого и листового компонента (не содержащего других компонентов):

Vite (babel)Vite 4.2Vite 4.3Улучшение
dev cold start17249.0мс5132.4мс-70.2%
dev warm start6027.8мс4536.1мс-24.7%
Root HMR46.8мс26.7мс-42.9%
Leaf HMR27.0мс12.9мс-52.2%
Vite (swc)Vite 4.2Vite 4.3Улучшение
dev cold start13552.5мс3201.0мс-76.4%
dev warm start4625.5мс2834.4мс-38.7%
Root HMR30.5мс24.0мс-21.3%
Leaf HMR16.9мс10.0мс-40.8%

Сравнение времени старта Vite 4.3 и 4.2

Сравнение времени HMR (горячей замены модулей) Vite 4.3 и 4.2

Вы можете прочитать больше информации о бенчмарке здесь. Спецификации и версии для этого теста производительности:

  • Процессор: Ryzen 9 5900X, Оперативная память: DDR4-3600 32GB, SSD: WD Blue SN550 NVME SSD
  • Windows 10 Pro 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

Ранние пользователи также сообщали о 1.5x-2x улучшении времени старта разработки на реальных приложениях при тестировании бета-версии Vite 4.3. Нам было бы интересно узнать результаты для ваших приложений.

Профилирование

Мы продолжим работать над производительностью Vite. Мы разрабатываем официальный инструмент бенчмаркинга для Vite, который позволит нам получать метрики производительности для каждого пулреквеста.

Также vite-plugin-inspect теперь имеет больше функций, связанных с производительностью, чтобы помочь вам определить, какие плагины или мидлвары являются узким местом для ваших приложений.

Используя vite --profile (а затем нажав p) после загрузки страницы, вы сможете сохранить профиль ЦП для запуска dev-сервера. Вы можете открыть его в приложении, таком как speedscope, чтобы выявить проблемы с производительностью. Вы можете поделиться своими находками с командой Vite в Обсуждении или в Discord Vite.

Следующие шаги

Мы решили выпустить одну основную версию Vite в этом году, синхронизировав её с концом поддержки Node.js 16 в сентябре, и прекратить поддержку как Node.js 14, так и 16. Если вы хотите участвовать, мы начали Обсуждение Vite 5, чтобы собрать ранние отзывы.

Выпущено под лицензией MIT. (dev)