gulp-bem / gulp-bem-bundle-builder

DEPRECATED repository, moved to https://github.com/bem/gulp-bem/tree/master/packages/gulp-bem-bundle-builder
Other
3 stars 1 forks source link

Ускорение сборки. #13

Open belozer opened 7 years ago

belozer commented 7 years ago

Всё радует, вот только скорость сборки огорчает ~5-6 секунд.

Для эксперимента решил попробовать связку gulp-cached + gulp-remember. Собираю только стили. Процесс теста - вызов build 4 раза подряд.

  1. Тест с кэшем
  2. Тест без кэша

image

Такой простой кэш ускоряет пересборку в 3 раза, что нам и нужно.

qfox commented 7 years ago

А ты предлагаешь это сделать в самом gulp-bem-bundle-builder? Это не получится сделать в project-stub?

belozer commented 7 years ago

@zxqfox кэш конечно хорошо бы сделать на уровне gulp-bem. Пока просто экспериментирую, т.к. автоматическая переборка проекта ~6 секунд после изменения блока стала очень напрягать.

2 ночи пытался разобраться с gulp-bem-bundle-builder, gulp-bem-src, bem-bundle (исходники). Чтобы найти то место, которое вызывает такую задержку. Немного начинаю вникать в исходники, но пока безрезультатно.

Пока в проекте использую выше описанное решение. Решил оставить его здесь для тех, кто также использует gulp-bem сборку.

belozer commented 7 years ago

Следующий этап для ускорения пересборки.

Разбивка бандл билдера на разные таски (css, browserjs и т.д.) Ускорить пересборку получилось ещё в 2 раза.

По непонятной причине пересборка постоянно разные временные показатели показывает. То 4 сек то 7, поэтому немного прыгают мои измерения.

Что было: ~4.5-7 секунды занимала пересборка проекта (с кэшем по непонятной причине долговато).

Что стало: ~1-2 секунды, т.к. проект теперь пересобирается точечно по технологии.

upd. Разобрался с падением скорости в моей сборке. Были установлены пакеты моих пресетов старой версии (без кэша). В общем установил последние версии и вот результаты.

пересборка стилей 200мс - 500мс пересборка js 900мс - 1200мс.