Задать вопрос
Megas
@Megas

Почему запуск PHP скрипта под Apache на много медленее, чем под CLI?

У меня есть скрипт, который запускается раз в несколько минут и производит около миллиона записей в БД Redis. Скрипт запускается через Apache (т.е. по URL удаленным планировщиком задач). Я был удивлен, что такой скрипт работает очень долго, примерно со скоростью 1.6К комманд в секунду, хотя бенчмарки показывают скорость в ~250К комманд в секунду. Причем чем дольше работает скрипт, тем медленее он пишет в Redis. Памяти на сервере валом (да и в скрипте все оптимизированно). Долго проверял что не так с Redis, но потом запустил этот скрипт через консоль и о чудо, вместо обычных 550-600 секунд, скрипт отработал за 7 (!) секунд.

Теперь пытаюсь понять почему через Apache все так медленно работает?
Какие могут быть причины?
Как можно сделать профайлинг Apache?
Ктото сталкивался с подобной проблемой?

Конфиги PHP в Apache и CLI режимах одинаковые.

Apache: 2.4.29
Server: Ubuntu
PHP: 7.3

P.S. Предложения обновить пхп или изменить апаче на другой сервер - не интересуют. Хочу понять в чем проблема в данном случае.
  • Вопрос задан
  • 148 просмотров
Подписаться 1 Средний 4 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
t-alexashka
@t-alexashka
Сразу пишу legacy код
Очевидно что надо смотреть конфиги апача, сколько ему разрешено использовать оперы на процесс, и в каком режиме там работает пхп (обычный через модуль апача или как fpm).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽