Рейтинг:0

медленный php (php-fpm) (долгое ожидание apache php)

флаг co

У меня апач с модулем PHP-FPM, 8 ядер процессора. Средняя общая загрузка ЦП составляет около 75% ЦП, в основном из-за MySQL, см. Экран.

На самом деле сейчас нагрузка немного меньше, чем обычно.

введите описание изображения здесь

Но проблема в том, что когда я открываю домашнюю страницу, загрузка случайным образом составляет около 1 с (я думаю, время до первого байта).

Я думал, что это может быть ожидание из-за подключения к mysql и т. Д., Но кажется, что дополнительное время ожидания - это время, прежде чем PHP получит голос от Apache.

Я сделал два интересных теста:

  • Простой html-файл (пустой файл с каким-то словом) загружается 100 мс.
  • Простой php-файл (без подключения к mysql и т. д., просто пустой php-файл с простым эхом) загружается примерно за 1 с.

Таким образом, проблема, очевидно, связана с комбинацией php или apache + php.

Почему и как исправить.

Я попытался увеличить некоторые настройки PHP fpm, например

вечера = динамический
pm.max_children = 5
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 4
pm.max_requests = 200

Переместите значения от бита по умолчанию вверх. Да, загрузка процессора мгновенно увеличилась почти до 99% всех процессоров, но скорость не была фиксированной + сервер был полностью загружен.

Что делать?

Кстати, из мод-статуса Apache я вижу, что в настоящее время обрабатывается 25 запросов в секунду (хотя обычно удваивается). И я не думаю, что должен ждать 1 с, чтобы загрузить пустой php-скрипт с 8 ядрами процессора.

Версия сервера: Apache/2.4.29
PHP7.2-fpm
MPM-событие
8 ВЦП, 16 ГБ ОЗУ

Кстати, пустой файл php также занимает около 3-4 секунд, а не только 1 секунду.

djdomi avatar
флаг za
какие запросы вы выполняете, что MYSQLD съедает вашу систему?
luky avatar
флаг co
некоторые запросы анаграмм занимают в среднем 0,5 с, некоторые также могут занимать 1,5 с, но обычно около 0,5 с.
djdomi avatar
флаг za
вы используете memcached? или аналогичный для кеширования?
luky avatar
флаг co
да, и даже настройка кеша настолько эффективна, что 84% запросов идут из кеша, а не из БД. при загрузке процессора его почти не видно. может быть на 10-15% меньше.
флаг in
Amigo tengo i3 + 4gb ram y ajuste de esta forma.[введите описание изображения здесь](https://i.stack.imgur.com/kG2FR.png)

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.