502 Bad Gateway wird angezeigt, php-fpm beansprucht 100 % der CPU

502 Bad Gateway wird angezeigt, php-fpm beansprucht 100 % der CPU

Okay, letzte Nacht, gegen 2 Uhr morgens, stieg die CPU-Auslastung auf einem meiner Server auf 100 %. Als ich heute Morgen nachschaute, sah ich, dass 5 PHP-FPM-Prozesse zusammen etwa 100 % der CPU beanspruchten. Ich habe den Server neu gestartet, aber jedes Mal, wenn der Server wieder hochfährt, starten die PHP-FPM-Prozesse erneut und beanspruchen 100 % der CPU.

Es handelt sich um einen Ubuntu 14.04.3 LTS (GNU/Linux 3.13.0-32-generic x86_64)-Server. Ich habe die gesamte Software aktualisiert, kann aber einfach keine Informationen darüber finden, was die Ursache dafür ist.

Offensichtlich führt das Problem dazu, dass die auf dem Server gehosteten Websites offline sind und ständig entweder einen 502 Bad Gateway- oder einen 504 Gateway Time-out-Fehler anzeigen ...

Ich hoffe, dass mir jemand bei der Behebung dieses Problems helfen kann.

Ich habe 3 weitere Server mit genau derselben Konfiguration, bei denen keines dieser Probleme auftritt.

BEARBEITEN 1: Wenn ich mir NewRelic ansehe, wird mir angezeigt, dass es etwa zur selben Zeit, als die Probleme begannen, auf der Registerkarte „Netzwerk“ einen enormen Anstieg bei „Paketen pro Sekunde“ gab. Das muss etwas mit dem Problem zu tun haben …

Antwort1

Ich hatte ein ähnliches Problem mit PHP-FPM und es beanspruchte sogar nachts, wenn weniger Verkehr herrschte, 100 % der CPU-Auslastung.

Sie müssen die PHP-FPM-Konfigurationsdateien etwas optimieren. Stellen Sie sicher, dass dieser Eintrag vorhanden ist:-

pm = bei Bedarf pm.max_children = 14 pm.start_servers = 14 pm.min_spare_servers = 13 pm.max_spare_servers = 3

Wenn es nicht ondemand ist, wechseln Sie zu ondemand, da PHP-FPM sonst viele CPU-Ressourcen beansprucht. Mit ondemand werden weitere Prozesse gestartet, wenn dies erforderlich ist.

Die Konfigurationsdateien für PHP-FPM befinden sich unter: -

/etc/php5/fpm/php-fpm.conf

Unter pool.d/www.conf ist auch ein Pool konfiguriert.

Überprüfen Sie beide Dateien auf Einträge, optimieren Sie die oben genannten Einstellungen entsprechend und starten Sie Ihr PHP-FPM neu.

verwandte Informationen