Im Internet habe ich Ratschläge gefunden, die die Berechnung Ihres Apache MaxClients
auf der Grundlage des RAM-Bedarfs Ihres durchschnittlichen Apache-Prozesses empfehlen. Ich habe nur einen Blick darauf geworfen top
und für meine Site scheinen das etwa 650 KB zu sein. Ich habe 32 GB RAM, wobei MySQL etwa 20 GB verwendet. Wenn ich Apache nur die Hälfte der verbleibenden 6 GB geben würde, könnte ich angeblich ~9231 Apache-Prozesse verarbeiten.
Aber jeder Apache-Prozess erzeugt doch einen PHP-Prozess, oder nicht? Und mein durchschnittlicher PHP-Prozess ist etwa 40 MB groß. Wenn ich das berücksichtige, komme ich auf etwa 147 Prozesse. Ganz unterschiedliche Zahlen. Kann jemand Licht in diese Frage bringen?
Antwort1
Ich bin davon überzeugt, dass die Größe von Apache-Prozessen mit der Zeit auch auf Grundlage anderer Variablen zunimmt.
Sie sollten Ihre Site einem Belastungstest unterziehen und sehen, was passiert. Vielleicht sollten Sie auch etwas RAM für den Cache/Pufferung/Headroom freihalten. Sie möchten ja nicht mit dem Swapping beginnen.
Schau dir das an: https://loadimpact.com/
Und das: http://junit.org/
Ich bin sicher, dass es dafür jede Menge anderer Apps/Dienste gibt.
- BEARBEITET
Wenn diese Site korrekt ist, hilft sie beim Verständnis der Speichernutzung von Apache und bespricht PHP und wie dessen Speichernutzung reduziert werden kann.
https://www.digitalocean.com/community/tutorials/how-to-optimize-apache-web-server-performance