Hohe CPU-mod_fcgid: can ' T apply Prozess Steckplatz
Bekomme ich die folgende Warnung:
mod_fcgid: can ' T apply Prozess Steckplatz für
/var/www/cgi-bin/cgi_wrapper/cgi_wrapper
Sobald diese Warnung angezeigt wird, die server-CPU erhöht auf 97% - 101%
Ruft der server rund 140K Seitenaufrufe täglich. Diese Warnung erscheint, meist um 11:00-12:00
Neben den 140K Seitenaufrufe berechnet durch das Analysen-es macht auch Anfragen von Webseiten Dritter, die Anzeige einer text-Anzeige auf Ihre website. Rund 2700 Webseiten sind anzeigen, eine Anzeige und eine insgesamt 22139 Anfragen pro Stunde zusammen auf dem server.
Habe ich versucht: chmod 755 /var/log/httpd
aber gibt es nicht einen Ordner "httpd" in /var/log
Ich habe versucht, anpassen, MaxSpareServers und MaxClients auf, was möglich hohe Werte. Aber nicht Wirkung. Nachdem Apache neu gestartet wurde, es scheint in Ordnung zu sein für eine Weile (server reagiert etwas langsam und Warnungen nicht mehr erscheinen in der log-Datei). Aber nach einer Weile die gleiche Warnung angezeigt, und die CPU wirft wieder.
Wenn jemand hat Vorschläge, bitte lassen Sie mich wissen, danke alle.
InformationsquelleAutor Rens Tillmann | 2013-09-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese Warnung besagt, dass die FastCGI-Prozess-pool erschöpft ist, und es hat eine Globale Beschränkung von FcgidMaxProcesses und eine pro-Skript-limit von FcgidMaxProcessesPerClass (siehe http://httpd.apache.org/mod_fcgid/mod/mod_fcgid.html#fcgidmaxprocesses).
Die Größe dieses Pools kann abgestimmt werden, mit folgenden Informationen :
In jedem Fall wird der default-Wert von FcgidMaxProcesses (1000), ist empörend. Sie führen einen stummen 'ab -c100 -n10000
Nur um sicher zu sein, lassen Sie mich es anders aus : die "nicht anwenden können Prozess-slot" - Fehler ist ein normalen Fehler, weil der server hat eine Feste Menge von Ressourcen, und diese Grenzen getroffen werden. Wenn Sie drängen, dass die Grenze zu hoch wrt. um Ihre server-Ressourcen, die Warnung kann nie wieder erscheinen, aber Ihre server werden zusammenbrechen unter der Last.
Und BTW, MaxSpareServers und MaxClients nicht in Bezug zu Ihrem problem regulieren Sie den Apache-Prozess pool, nicht die FastCGI-Prozess-pool. das ist ein anderes Thema.
Ich arbeite in diese Art der 'Optimierung Unternehmen'. Werfen ein Nginx helfen könnte, aber es ist nicht eine automatische Lösung. An diesem Tag habe ich nur bekannt 1 Fall (von Hunderten, wirklich) wo ich Sie nicht konfigurieren Sie Apache, damit es keinen Engpass darstellt. Apache ist sehr performant und vorhersehbar, aber es ist nicht der hype. Die meisten Menschen, die sagen "Nginx statt' haben einfach keine Ahnung von Apache, welches nicht kompliziert und Recht gut dokumentiert.
Dies ist meine Erfahrung auch. Ich arbeite bei einem ISP mit EINER MENGE von Apachen, fast kein nginx hier.
Ich habe einen dedizierten server, acht-core-cpu acht Threads, 64 GB ram und über 10 Seiten mit 10/20 Benutzer online (etwa 8000/9000 Sitzung im Monat). Ich sehe eine Menge von 503 ich lieber zu verlangsamen Dinge, aber nie zeigen, 503... was kann ich tun? Meine Einstellungen: FcgidIdleTimeout 180 FcgidProcessLifeTime 300 FcgidMaxProcesses 300 FcgidMaxProcessesPerClass 90 FcgidMinProcessesPerClass 0 FcgidConnectTimeout 600 FcgidIOTimeout 600 FcgidIdleScanInterval 60 FcgidMaxRequestsPerProcess 10000 FcgidInitialEnv PHP_FCGI_MAX_REQUESTS 10000
InformationsquelleAutor zerodeux