Sag mal Alex, oder die anderen, die Erfahrungen mit FPM haben.... Wie schaut es denn eigentlich mit dem Speicherverbrauch aus?
Ich meine, es heißt überall, FPM wäre das bessere Modul als mod_php. Irgendwie kann ich das so nicht wirklich nachvollziehen.
Datenbank- und Fileserver: Ok, bei dem ist es besser. Da braucht der Apache-Prozess so an die 8 MB und jeder FPM-Child so um die 25 MB. Dort ist es perfekt, denn da laufen nur 2 FPM-Childs (1 Pool) und an die 200 Apache-Childs.
Aber, bei meinem normalen Webserver, der zu 99,8% PHP verarbeitet und eben nicht wie der Fileserver zu 99,9% Bilder, schaut das ganz anders aus. Hier sehe ich keine Spur von, dass FPM besser ist, im Gegenteil.
Mal als Vergleich, der alte Server, den der neue ersetzen soll. Der alte lief klassisch mit Apache-Prefork und mod_php. Da waren immer 80 Apache-Prozesse gestartet und bei Bedarf konnten noch mal 150 dazu kommen., also max. 230. So, da ist PHP dank mod_php ja immer im Prozess integriert. Jeder Prozess brauchte da an die 18 MB. Im Vergleich dazu ist der Fileserver natürlich deutlich besser, da der in der Regel ohne PHP auskommt.
Aber mein neuer Server.... Hier haben die reinen Apache-Prozesse so an die 9 MB, also fast wie der Fileserver, aber die FPM Prozesse haben zwischen 25 und 50 MB, je nach dem, wie alt sie sind. Hallo, wie soll der denn da mit den ganzen Pools skalieren können? Es laufen 11 Pools, alle mit min 5 Childs, zwei auch mit bis zu 50 Childs.
Rein rechnerisch sind 9x5 Childs + 2x50 Childs also vom Speicher her zu viel bzw. können zu viel werden. Dabei haben die Pools so aber noch nicht mal Lastreserven, die der alte Server immer und zu jeder Zeit hatte.
Wo ist denn da der Denkfehler oder braucht FPM wirklich so viel mehr, entgegen den Aussagen, dass es weniger braucht? Ich müsste eigentlich für jeden Pool noch mal 10 Childs drauf packen, dass auch Lastspitzen abgefangen werden, aber das ist schlicht nicht möglich. Zudem ist ja unbekannt, welcher Pool das dann eventuell wann überhaupt braucht.... Und alle um 10 erhöhen? Keine Chance. Oder doch alles in einen Pool werfen und den hochschrauben, dann ist ja egal welche Seite Reserven anfordert? Nur irgendwie ist dann ja der Sinn von FPM und Prozesstrennung verloren.
Hm. Wo ist mein Denkfehler?