Heim >Backend-Entwicklung >PHP-Problem >Was tun, wenn zu viele PHP-cgi.exe-Prozesse vorhanden sind?

Was tun, wenn zu viele PHP-cgi.exe-Prozesse vorhanden sind?

藏色散人
藏色散人Original
2020-09-03 09:39:062907Durchsuche

Lösung für zu viele php cgi.exe-Prozesse: Überprüfen Sie zunächst den Speicherplatz des Systems, um zu sehen, ob zu viele temporäre Systemdateien vorhanden sind. Verwenden Sie dann den Befehl „del *.*“, um alle Dateien zu löschen Gehen Sie zu Schritt 2 der Programmkonfigurationsdatei und optimieren Sie schließlich die Parameter der FastCGI-Konfigurationsdatei.

Was tun, wenn zu viele PHP-cgi.exe-Prozesse vorhanden sind?

Empfohlen: „PHP-Video-Tutorial

Lösung für zu viele php-cgi.exe-Prozesse:

Lösung für zu viele php-cgi.exe-Prozesse auf dem Server, die eine CPU-Auslastung von 100 % verursachen :

1. Überprüfen Sie den Speicherplatz auf der Systemfestplatte. Überprüfen Sie, ob zu viele temporäre Dateien im System vorhanden sind. Die temporären Dateien der MySQL-Datenbank werden standardmäßig in c:/windows/temp gespeichert, was zur Ansammlung von Zehntausenden oder sogar Millionen kleiner Dateien führt und die Systemfestplatte überlastet .

del *.* Alle Dateien löschen

2. Es gibt keine integrierte Unterstützung für die PHP-Sprache in IIS. Um PHP zu verwenden, müssen Sie es selbst installieren. PHP kann im CGI-Modus oder im ISAPI-Modus installiert werden. Da der ISAPI-Modus eine höhere Leistung bietet, wird die Verwendung des ISAPI-Modus empfohlen.

3. Wenn Sie das Programm ändern können, wird empfohlen, den StartProcesses-Wert in der Programmkonfigurationsdatei auf 2 zu reduzieren, um zu sehen, ob es sich verbessert.

4. Überprüfen Sie, ob es Probleme mit dem Server und Angriffe gibt.

Optimieren Sie die Fastcgi-Konfigurationsdatei fcgiext.ini in Windows 2003 IIS6, um die Anzahl der php-cgi.exe-Prozesse und die Speichergröße zu reduzieren.

Die Konfigurationsumgebung ist Windows 2003 IIS6 fastcgi (FCGI) PHP5.2.17 und wird gefunden dass es im FastCGI-Modus funktioniert. Wenn die Anzahl der Besuche etwas höher ist, werden N mehr PHP-CGI-Prozesse benötigt. In der gleichen Situation können es Hunderte von MB mehr sein als bei der Verwendung von isapi Der Serverspeicher ist nur 2G groß und kann nicht beschädigt werden.

Die Lösung für dieses Problem besteht darin, die Parameter der Fastcgi-Konfigurationsdatei in der Webserverkonfiguration zu optimieren.

Sie können die Parameter im Zusammenhang mit dem PHP-CGI-Prozess in der Datei c: WindowsSystem32InetsRVFCGiext.ini festlegen, wie z. Instanz Die maximale Anzahl von Anforderungen, die verarbeitet werden können,

 maxInstances gibt die maximale Anzahl von Instanzen an, die gestartet werden können,

 EnvironmentVars erstellt eine Umgebungsvariable PHP_FCGI_MAX_REQUESTS, der Standardwert ist auf 10000 gesetzt,

  requestTimeout gibt das Anforderungszeitlimit an 600 Sekunden,

 activityTimeout Es wird ein aktives Sitzungs-Timeout von 900 Sekunden angegeben. „Das Folgende ist der empfohlene Wert.“ Ändern Sie maxInstances=140

für 2G-Speicher

 Erneut ändern

 [Types]
  php = PHP
  [PHP]
  ExePath=C:\php-5.3.8-nts-Win32-VC9-x86\php-cgi.exe
  maxInstances=100
  InstanceMaxRequests=10000
  EnvironmentVars=PHP_FCGI_MAX_REQUESTS:10000
  RequestTimeout=600
  ActivityTimeout=900

 Es wird empfohlen, diesen Wert auf einen kleineren Wert zu ändern

 Change InstanceMaxRequests=200

für 512M-Speicher; Change InstanceMaxRequests=300

für 1G-Speicher; Change InstanceMaxRequests=50 0

für 2G Starten Sie IIS nach der Änderung neu.

Das obige ist der detaillierte Inhalt vonWas tun, wenn zu viele PHP-cgi.exe-Prozesse vorhanden sind?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn