PHP unter IIS FastCGI - So ermitteln Sie die besten Werte für InstanceMaxRequests und PHP_FCGI_MAX_REQUESTS

PHP unter IIS FastCGI - So ermitteln Sie die besten Werte für InstanceMaxRequests und PHP_FCGI_MAX_REQUESTS

Ich verwende PHP 5.4 (ja, ich weiß, es ist alt und muss aktualisiert werden) als FastCGI-Komponente in IIS 8.5 auf Windows Server 2012 R2. Während ich die Einstellungen optimierte, las ich diehttps://docs.microsoft.com/en-us/iis/application-frameworks/running-php-applications-on-iis/configure-php-process-recycling-behaviorArtikel.

In diesem Artikel wird empfohlen,InstanceMaxRequestsUndPHP_FCGI_MAX_REQUESTSZu10 000- aber es wird nicht erklärt, warum. Gibt es eine bessere Strategie, um den besten Wert für eine bestimmte Umgebung zu bestimmen, oder ist es sicher, ihn wie im Artikel als 10.000 fest zu codieren?

Wie bestimme ich, was das Beste istInstanceMaxRequestsUndPHP_FCGI_MAX_REQUESTSWerte sindfür mein eigenes Umfeld? Wie finde ich heraus, welche Werte ich verwenden sollte?

Antwort1

Ich habe meine Produktionsumgebung mit einem Wert von betrieben20 000für mindestens 5 Jahre ohne Probleme. (Ich betreibe meine Entwicklungsumgebungen mit einem Wert von200.)

Die eigentliche Frage ist: Wie oft möchten (oder müssen) Sie neue PHP-Prozesse erstellen, um den eingehenden Datenverkehr zu verarbeiten? Wenn in Ihren Protokollen viele HTTP 500-Fehler angezeigt werden, versuchen Sie, diesen Wert zu verringern.

Wenn Sie den Wert zu niedrig einstellen, werden php-cgi.exeim Laufe des Tages viele Prozesse erstellt und gelöscht, was zu einer leichten Verzögerung bei der Verarbeitung von Anfragen führen kann. Wenn Sie den Wert zu hoch einstellen, kann ein Speicherleck länger unkontrolliert bleiben oder es können anderweitig unerklärliche HTTP 500-Fehler auftreten, wenn der Prozess abstürzt (obwohl ich das für unwahrscheinlich halte).

verwandte Informationen