Jump to content
Froxlor Forum
  • 0

php fcgi cpu high load


feiaweng

Question

Hallo,

 

ich habe froxlor auf einem debian 8 system mit apache 2.4 und php5.6 laufen. Es laufen ca. 15 verschiedene Websites. Alle mit fcgi.

Es handelt sich um einen KVM Server mit 4 vCPU und 16 GB RAM.

PHP fcgi benötigt viel RAM. Ich vermute ein Upgrade auf PHP 7.2 würde helfen, da es die php Performance verbessern soll.

Allerdings kann ich jetzt grad auf Grund von Webseitenproblemen mit PHP 7 nicht upgraden.

Kann ich noch irgendwo an der Performance Schraube drehen, damit der Server nicht ständig eine Load von mindestens 1 hat?

In den Logs sind keine Fehler vorhanden, im Apache log auch nicht.

Danke schonmal.

 

Gruss feiaweng

Link to comment
Share on other sites

25 answers to this question

Recommended Posts

  • 0

hat mit ein paar kleinen Problemen funktioniert auf dem Backup-System.

Auf dem Live-System leider nicht. Weiss leider nicht warum.

Dummerweise habe ich mir jetzt selbst ein Ei gelegt.

Ich habe versehentlich in Froxlor unter Einstellungen fcgid und php-fpm deaktiviert. Nun komme ich an Froxlor nicht mehr ran um es zu aktivieren.

Die URL ist nun auf dem froxlor Host nicht mehr erreichbar, da php ja nicht läuft. Wie kann ich das wieder aktiveren, direkt im mysql?

Die froxlor DB zurückspielen aus einem dump hat nicht funktioniert.

Für Ideen wäre ich super dankbar.

LG

feiaweng

Link to comment
Share on other sites

  • 0

ich habe dummerweise irgendwas in der apache config überschrieben, ich vermute mal mods-available/fastcgi.conf

Bekomme nun beim Starten des php-fpm folgenden Error:

Starting The PHP FastCGI Process Manager...
php5-fpm[14608]: [07-Feb-2019 10:44:45] WARNING: Nothing matches the include pattern '/etc/php5/fpm/pool.d/*.conf' f...ine 129.
 php5-fpm[14608]: [07-Feb-2019 10:44:45] ERROR: No pool defined. at least one pool section must be specified in config file
 php5-fpm[14608]: [07-Feb-2019 10:44:45] ERROR: failed to post process the configuration
 php5-fpm[14608]: [07-Feb-2019 10:44:45] ERROR: FPM initialization failed
 systemd[1]: php5-fpm.service: main process exited, code=exited, status=78/n/a
 systemd[1]: Failed to start The PHP FastCGI Process Manager.
 systemd[1]: Unit php5-fpm.service entered failed state.

Ich komm grad leider gar nicht weiter, und bräuchte Hilfe.

 

Gruss feiaweng

 

Link to comment
Share on other sites

  • 0

An der fastcgi.conf liegt das nicht. Fpm sucht in /etc/php5/fpm/pool.d/ nach den Domain configs. Stelle bitte in den fpm Dämon Einstellungen sicher, dass der config Pfad auf /etc/php5/fpm/pool.d/ steht, damit die configs auch dort hin erstellt werden

Link to comment
Share on other sites

  • 0

unter /etc/php-fpm.d finde ich die .conf files. Wahrscheinlich sind die files angelegt worden vor der Umstellung auf

/etc/php5/fpm/pool.d

Soll ich die configfiles einfach dort hinkopieren?

Meinst du mit den fpm Daemon Einstellungen das file  /etc/php5/fpm/php-fpm.conf

include=/etc/php5/fpm/pool.d/*.conf

 

Gruss

Link to comment
Share on other sites

  • 0

Also entweder passt du den Pfad in der php-fpm.conf an auf /etc/php-fpm.d oder du passt die froxlor Einstellungen des fpm daemon an. Um das jetzt konkret erstmal zum laufen zu bringen, dass du wieder an froxlor kommst kannst du die configs aus /etc/php-fpm.d erstmal nach /etc/php5/fpm/pool.d kopieren und den fpm Dienst neustarten.

Link to comment
Share on other sites

  • 0

Ich habe jetzt umgestellt von FCGI auf PHP-FPM. Ich sehe allerdings dass trotzdem viel CPU und RAM benötigt wird. Bei einer Domain ganz besonders, aber da läuft auch ioncube. Dieses musste ich allerdings für PHP global aktivieren, da man es nicht wie Zendguard für einzelne Domains aktivieren kann. Kann ich noch was optimieren von den Schaltern die php-fpm anbietet? Welche Infos muss ich liefern? 

Danke feiaweng

Link to comment
Share on other sites

  • 0

Die ersten beiden Websites kann ich auch wärmsten empfehlen, hab die auch kürzlich erst gelesen. Stehen einige nützliche Tipps drin. Aber Wunder darf man natürlich auch keine erwarten. Wieviel Aufrufe hast du denn so und was heißt "viel" RAM?

Link to comment
Share on other sites

  • 0

die Werte habe ich von munin-graphen. Siehe Anhang.

Die Namen darf ich leider nicht veröffentlichen. Aber man sieht den current verbrauch von RAM und CPU.

Einige der Domains brauchen viel, andere eher weniger. Liegt an der Anzahl der Zugriffe.

Bin gerade dabei die Artikel durchzulesen, aber geändert habe ich noch nichts. Das mache ich später mal in Ruhe.

Was ich gelesen habe, ist das man mit pm = static/dynamic schon mal eine erste Option der Optimierung hat ?

 

Gruss

 

php-fpm-cpu.PNG

php-fpm-ram.PNG

Link to comment
Share on other sites

  • 0

Schau mal hier, hier ist erklärt was das bedeutet https://www.php.net/manual/de/install.fpm.configuration.php

Auf der ersten Website die @d00p verlinkt hat wird folgendes "empfohlen"

Zitat

emergency_restart_threshold 10
emergency_restart_interval 1m
process_control_timeout 10s

Vielleicht probierst du das mal aus. Das soll dem verschwenden von RAM durch PHP entgegen wirken (genaueres was da passiert dem Link zu php.net entnehmen und/oderdem Link von @d00p). Ich persönlich halte 1 Minute vielleicht für etwas übertrieben aber das kommt sicher auf das spezifische Szenario drauf an.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now


×
×
  • Create New...