Comments 20
Спасибо за качественный разбор.
(около 500 компонентов, 100 зависимостей, 10 000 строк кода).
100 зависимостей - это как считали?
Привет! Спасибо за комментарий, тесты для этой таблицы генерил DeepSeek, но предположительно под зависимостью понимаются устанавливаемые пакеты из package.json
Данные у DeepSeek, как он сам говорит вроде октябрь 2023, что немножко так устарели
Эта табличка нужна исключительно для наглядного примера (в целом не далёкого от правды), который в чуть более доступной форме отражает возможности представленных инструментов. Для более точных цифр лучше посмотреть на исследования скорости с тестами, примеры которых я тоже прикрепил на всякий случай.
Раз уж появилась такая статья, спрошу у автора и сообщества - можно ли распараллелить vite build на несколько процессов, чтобы запользовать все ядра для ускорения билда (и как с этим у остальных систем)? В статье параллельность упомянута только в контексте rspack.
Привет! Благодарю за вопрос, насколько мне известно "из коробки" vite не поддерживает мультитред сборку (rollup), но в таком режиме может работать esbuild, который в vite только для dev, но можно попробовать полностью перейти на esbuild. Если сборку надо производить не в огромном монолите, а просто несколько пакетов, то можно попробовать запускать просто несколько скриптов сборки одновременно, но качество логов оставит желать лучшего) Webpack так же из коробки многопоточно не работает, но у него много разных плагинов, можно так же посмотреть в сторону esbuild-loader / thread-loader для ускорения сборки
Генерится несколько пакетов отдельными запусками vite build, на некоторые vite build что-то там transforming порядка минуты. Потрохов не знаю - сам пишу на C++ и меня устраивает make -j<побольше>, но иногда надо собирать продукт целиком вместе с frontend частью. Спасибо, поговорю с нашими фронтэндерами про esbuild.
Статья называется "как собирать микрофронтенды", но показывает различие между технологиями, без реальных практических примеров. Предлагаю заменить на "на чем собирать микрофронтенды"
Если есть возможность, дополните статью компонентами на 3000 и 5000 элементов (можно больше).
3000+ компонентов - это нормальное среднее количество для проектов в несколько лет.
Мы не можем переехать с Webpack на Vite по причине того, что HMR в Vite примерно на 3000+ компонентах начинает работать крайне медленно из-за особенности сети. Закачиваются 3000 легковесных файлов компонентов, но полностью нагружают Network в консоли.
Может быть они уже починили и всё заработает.
Связанные issues с этим: https://github.com/vitejs/vite/discussions/4803 , https://github.com/vitejs/vite/issues/13570
Надо будет попробовать Rspack, посмотреть как он себя ведёт на больших количествах компонентов
А что это за страница/страницы, которые требуют 3000+ компонентов для отображения?
ну надо и надо, что Вы? :) что за «640 КБ должно хватить всем»
Да не только я. По ссылке на github issue уже ответили, что это выглядит не проблемой Vite, а архитектуры, не использования динамичных роутов/импортов и прочего
Привет! Спасибо за интересный кейс, если удастся разобрать, то допишу здесь!
Убило с уровня сложности "простой")
Использую rspack чуть ли не с первой публичной версии, уже почти 2 года как. Это было лучшее решение на тот момент, переезд максимально простой, скорость феноменальная.
Если у вас конфиг хоть немного сложнее чем "вот index.ts, вот index.html" — rspack нужный выбор.
ну если у вас легаси проект с webpack, то да, обязательно нужно переезжать на rspack из-за перформанса. это как с bun, он поддерживает все что есть в ноде, но только быстрее и лучше во большинстве аспектов :) и переезд не требует затрат, например когда я переезжал с ноды на bun мне потребовалось лишь использовать "bun" вместо "node" в терминале, и ничего переписывать в коде не пришлось. как-то так
подскажите статью, где всё таки понятно что за зоопарк. вот я совсем не бандлил приложения. писал на JS внутри HTML. и любой шаг в сторону сборки - это сразу в центр зоопарка мутантов.
Webpack, Vite или Rspack: что это за зоопарк или чем собирать микрофронтенды в 2025?