Вот как работает dev
. Вы работаете с активами и кодом, которые меняются «на лету», когда вы разрабатываете, и поэтому Symfony очищает свой скомпилированный кеш между загрузкой каждой страницы, чтобы отобразить самые последние результаты для вас.
Assetic также разбивает файлы на отдельные файлы CSS вместо того, чтобы агрегировать их для вас в один файл, чтобы вы могли отлаживать ваши файлы SCSS в инспекторе браузера. Поскольку вы используете 42 файла SCSS для компиляции с SASS на лету, неудивительно, что assetic:dump
занимает некоторое время.
Наблюдатель - это тот же сценарий, поскольку он выполняет то же самое, если он обнаруживает изменение в любом файле. Это просто компромисс в том, что вы можете разрабатывать и разрабатывать «на лету» с вашей средой разработчиков.
Почему он медленнее, чем ваниль compass
установка? Чтобы догадаться, есть еще несколько шагов, связанных с тем, как Assetic управляет вашими файлами - он должен найти их из ваших шаблонов, переписать пути (если включен cssrewrite
), перемещать файлы и компилировать их.
варианты:
- Оптимизация SCSS файлов для компиляции быстрее
- уменьшить количество SCSS файлов
- Прекратить использование assetic для управления активами
но после развертывания этого к окружению prod
, у вас будет все кеширование в течение более длительных периодов времени, и поэтому вы не столкнетесь с 20-30-секундными проблемами с assetic compi на лету.
В зависимости от конфигурации и доступности компаса на виртуальной машине Ubuntu пользовательский код просмотра может компилировать scss-файлы в PHP (с помощью компилятора PHP для scss). –