Gubinsoft Solutions » Справка » Apache против узкого места PHP-FPM с дочерними процессами

Apache против узкого места PHP-FPM с дочерними процессами

15 июля 2021, Четверг
35

Серверы Apache, которые используют предварительную версию MPM с меньшим количеством экземпляров сервера, чем максимальное количество дочерних процессов PHP-FPM, могут испытывать проблемы с производительностью. В этом документе объясняется, как решить эти проблемы с зависимостями.

Эта проблема и решение применимы только к серверам, на которых работает Apache в режиме MPM Prefork.

Проблема

В следующем сценарии конфигурация сервера PHP-FPM допускает максимум 20 дочерних процессов PHP-FPM, а конфигурация сервера Apache допускает пять экземпляров сервера.
В следующем примере представлен файл конфигурации сервера PHP-FPM:

_is_present: 1
pm_max_children: 20
pm_max_requests: 20

В следующем примере представлен файл конфигурации сервера Apache:

StartServers: 5
<IfModule prefork.c>
MinSpareServers: 10
MaxSpareServers: 10
</IfModule>

Если сервер Apache получает 20 запросов, он немедленно передает десять из этих запросов доступным дочерним процессам PHP-FPM. После того, как PHP-FPM обработает эти запросы, Apache передаст еще десять запросов PHP-FPM.

Предупреждение: Для серверов большого объема такая конфигурация может вызвать серьезные проблемы с производительностью.

Решение

Чтобы решить эту проблему, вы должны настроить Apache, чтобы позволить достаточному количеству экземпляров сервера обрабатывать максимальное количество дочерних процессов PHP-FPM. Для этого настройте следующие параметры:

  • Минимум запасных серверов (MinSpareServers)
  • Максимальное количество резервных серверов (MaxSpareServers)
  • Макс.рабочих запросов (MaxRequestWorkers)

Установите для этих параметров значение больше или равное параметру pm_max_children в файле конфигурации сервера PHP-FPM.

Обсудить

Читайте также:

Установка Pterodactyl на Debian 10 (этап 2)
12 июля 2021, Понедельник
Установка Pterodactyl на Debian 10 (этап 2)
Как добавить IPv6 на сервер
30 июня 2021, Среда
Как добавить IPv6 на сервер
Обновил справочник
24 апреля 2021, Суббота
Обновил справочник
Установка Pterodactyl на Debian 10 (этап 1)
12 июля 2021, Понедельник
Установка Pterodactyl на Debian 10 (этап 1)
Прокомментировать
Кликните на изображение чтобы обновить код, если он неразборчив
Партнеры
Yandex Cloud
OVH
Equinix
Reg.ru

Тут временно нет ничего

Автору в течение месяца будет лень что-то делать