PHP под IIS FastCGI — как определить оптимальные значения для InstanceMaxRequests и PHP_FCGI_MAX_REQUESTS

PHP под IIS FastCGI — как определить оптимальные значения для InstanceMaxRequests и PHP_FCGI_MAX_REQUESTS

Я использую PHP 5.4 (да, я знаю, что он старый и его нужно обновить) как компонент FastCGI в IIS 8.5 на Windows Server 2012 R2. Пока я настраивал параметры, я прочиталhttps://docs.microsoft.com/en-us/iis/application-frameworks/running-php-applications-on-iis/configure-php-process-recycling-behaviorстатья.

В этой статье рекомендуется установитьInstanceMaxRequestsиPHP_FCGI_MAX_REQUESTSк10 000- но это не объясняет, почему. Есть ли лучшая стратегия для определения наилучшего значения для конкретной среды, или безопасно жестко закодировать его как 10 000, как в статье?

Как определить, что лучше всегоInstanceMaxRequestsиPHP_FCGI_MAX_REQUESTSценности естьдля моей собственной среды? Как мне определить, какие значения мне следует использовать?

решение1

Я запустил свою производственную среду со значением20 000по крайней мере 5 лет без проблем. (Я запускаю свои среды разработки со значением200.)

Вопрос на самом деле в следующем: как часто вы хотите (или нуждаетесь) в создании новых процессов PHP для обработки входящего трафика? Если вы видите много ошибок HTTP 500 в своих журналах, попробуйте уменьшить это значение.

Если установить его слишком низким, в течение дня будет создано и уничтожено много php-cgi.exeпроцессов, что может вызвать небольшую задержку в обработке запросов. Если установить его слишком высоким, утечка памяти останется неконтролируемой дольше или может привести к необъяснимым ошибкам HTTP 500, если процесс рухнет (хотя я думаю, что это маловероятно).

Связанный контент