Laravel on kubernetes - автозагрузка для медленных композиторов (производство) - PullRequest
0 голосов
/ 06 сентября 2018

Мы настроили кластер kubernetes для нашего приложения laravel на облачной платформе Google. Контейнеры:

  • код приложения + php-fpm
  • apache2
  • другие, не связанные с проблемой

(мы работаем под управлением nginx-ingress-controller, но это, похоже, не относится к проблеме)

Мы выполняем стресс-тесты jmeter на простом маршруте Laravel, который возвращает «хорошо», и мы заметили ужасное время отклика.

enter image description here

После этого мы запускаем тот же тест для index2.php (внутри public dir το slide поверх фреймворка), который просто возвращает 'ok'.

И мы получили этот результат (!): enter image description here

После копания мы обнаружили, что автозагрузка композитора вызывает эту медлительность.

Любые советы о том, как это можно решить, будут высоко оценены.

Спасибо

1 Ответ

0 голосов
/ 06 сентября 2018

Хорошо.Мы обнаружили, что у нас не включен opcache.Как описано в composer optimize-autoloader:

В PHP 5.6+ карта классов также кэшируется в opcache, что значительно сокращает время инициализации.Если вы убедитесь, что opcache включен , тогда карта классов должна загрузиться почти мгновенно, а затем загрузка класса будет быстрой.

...