Автозагрузка PHP Composer занимает вечно - PullRequest
0 голосов
/ 31 октября 2018

Всякий раз, когда я запускаю composer update, часть «Генерация файлов автозагрузки» всегда занимает вечность (иногда до 2 полных минут). Я запустил его с флагом --profile, чтобы точно определить эту проблему.

Я прочитал несколько статей об этом, но я все еще не могу понять, почему это занимает так много времени в моих проектах, и если это даже полезно для моих проектов? Я сталкиваюсь с этим всякий раз, когда развертываю изменения вживую, и хочу, чтобы это развертывание было как можно более быстрым. Я пытался запустить его с флагом --no-dev, но это ничего не меняет.

Итак, мой вопрос: почему автозагрузка занимает так много времени (и как я могу улучшить ее скорость)?

1 Ответ

0 голосов
/ 01 ноября 2018

В зависимости от того, как настроен ваш автозагрузчик в вашем файле composer.json, composer может сканировать каждый файл в вашем проекте в поисках классов. Для больших проектов это может занять довольно много времени. Особенно при использовании настройки classmap в композиторе. Чтобы ускорить генерацию автозагрузки, вам нужно использовать что-то вроде автозагрузчика PSR-4, указав префикс пространства имен для ваших классов, но это может потребовать некоторых изменений в вашем проекте в зависимости от структуры вашего проекта и классов.

...