Увеличение FcgidMaxProcesses не помогает решить “mod_fcgid: не может применить ошибку” слота процесса

У меня есть выделенный апачский сервер с высокими ресурсами.

  • ПОРШЕНЬ - 64 ГБ
  • Ядра - 20
  • с CentOS 6.7 x64

и

Изображение - статистика FCGI с phpinfo

Я запускаю приложение Magento с MySQL как механизм базы данных, который также развертывается на отдельном высоко снабженном выделенном сервере.

Веб-сайт хорошо работал с месяца, но внезапно он начал бросать ошибку, хотя он не находится под load/traffic-

Изображение - статистика Загрузки Сервера с HTOP

mod_fcgid: can't apply process slot for /var/www/cgi-bin/cgi_wrapper/cgi_wrapper с 503 сервисами временная unavaiable ошибка на браузере.

Так, я следовал ниже шагов для избавлений от него (но ни один из них на самом деле не работал):

  1. Я увеличил значение "FcgidMaxProcesses" в fcgid.conf и перезапустил апача, но это не имело никакого значения. Ошибка все еще там.

  2. Я проверил принадлежность файла и разрешение

    755 апачских апачских/var/run/mod_fcgid/sock
    644 корня базируются/var/run/mod_fcgid/fcgid_shm

  3. Перезагруженный сервер, ожидая, что существующие процессы FCGI будут сброшены и количество процесса для запуска с 0 так количество процесса, не поразит FcgidMaxProcesses в течение нескольких дней

Ниже мой fcgid.conf файл.

Я знаю, что значения тайм-аута слишком высоки, но я предполагаю, что это не имеет никакого отношения к этой ошибке, поскольку время загрузки страницы составляет приблизительно 4-5 секунд.

LoadModule fcgid_module modules/mod_fcgid.so

<IfModule !mod_fastcgi.c>
    AddHandler fcgid-script fcg fcgi fpl
</IfModule>

FcgidIPCDir /var/run/mod_fcgid/sock
FcgidProcessTableFile /var/run/mod_fcgid/fcgid_shm

FcgidProcessLifeTime 120
FcgidIdleTimeout 30
FcgidIdleScanInterval 5
FcgidMaxRequestsPerProcess 300
FcgidMaxProcesses 1200
FcgidIOTimeout 18000
FcgidBusyTimeout 18000

размер/usr/bin/php-cgi процесса находится на средних 70 МБ

Мой вопрос состоит в том, почему увеличивание значения FcgidMaxProcesses не имеет никакого значения? Есть ли какой-либо другой конфигурационный файл, который должен быть изменен?

У меня есть параллель plesk установленный. Роя / и т.д. папка, я столкнулся с другим сервисы, которые, я предполагаю, могут влиять на fcgi/FastCGI операции:

  1. php-fpm
  2. sw-engine-fpm

Действительно ли Fcgid зависит от какого-либо такого сервиса для ограничения его процессов? Как я обнаруживаю это?

Сделайте меня знающий о действительности.

Заранее спасибо.

0
задан 18 September 2015 в 12:30
3 ответа

Проблема решена.

И проблема не была связана с FCGID или какой-либо другой конфигурацией модуля Apache.

Причиной внезапного ухудшения работы сервера была атака ] Да все верно! Хотя это был не DDoS, а непрерывные запросы злоумышленника с разными шаблонами строки запроса (SQL-инъекция) и время загрузки целевой страницы - за исключением параметра строки запроса - около 3 секунд привели к достижению порогового предела процесса FCGID.

Я узнал об этом, когда включил mod_status , который напрямую выделял такие попытки взлома.

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

0
ответ дан 5 December 2019 в 12:03

Не получается.

mod_fcgid: не может применить слот процесса - это проблема Apahce+FCGI, и в случае большой нагрузки ее нельзя решить с помощью Apahce+FCGI.

Но может быть решена, если вы переключите Nngix+PHP-FPM для этого сайта

sw-engine-fpm - это панельный сервис Plesk и не оказывает никакого влияния на сайты клиентов.

Если вы установили Nginx и PHP-FPM через автоинсталлятор, вы можете включить обработку PHP Nginx+PHP-FPM на домене:

Plesk Nginx+PHP-FPM 1

И включить:

Plesk Nginx PHP-FPM 2

-1
ответ дан 5 December 2019 в 12:03

ok о FcgidMaxProcesses, Nginx + FPM и возможных атаках ...

но помните, что если вы используете Fcgid, вам также необходимо проверить

FcgidMaxProcessesPerClass xxx

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

1
ответ дан 5 December 2019 в 12:03

Теги

Похожие вопросы