Hallo!
Im
letzteren Fall würde durch zusätzliche Module beim forken kein Overhead entstehen.
Das ist aufgrund der Architektur des Apachen, sowohl beim prefork-mpm(http://httpd.apache.org/docs-2.0/mod/prefork.html) als auch beim worker-mpm(hybrid, multi-thread + multi-process... : [link:http://httpd.apache.org/docs-2.0/mod/worker.html) nicht sooo ausschlaggebend. Der Apache versucht immer einen Pool an freien Child-Prozessen zu haben, und immer wenn das zu wenig werden startet er vorsorglich neue Prozesse im Hintergrund. Genauso beendet er Prozesse, wenn zu viele nix zu tun haben. Das heißt, vom Forken bekommt man eigentlich nichts mit, weil das schon vorher geschieht. Wenn auf einmal zu viele Requests auf einmal eingehen, wird nicht wild geforkt, sondern nur 1 mal pro Sekunde 1 Prozess, nächste Sekunde 2, nächste 4... bis 32. Aber eine Belastung wo sowas nötig ist kommt in der Realität eigentlich nicht vor. Der Apache versucht nach Möglichkeit nichts an der Anzahl der Prozessen zu ändern.
Nein, mir geht es nicht darum, sondern es geht mir vor allem um die Größe und Laufzeit der Prozesse. Sag mal Du hast 512 MB RAM, und noch ein paar andere Dinge laufen, vielleicht noch 400 MB für den Apachen. Wenn Du jetzt in PHP den Oracle Client verwendest, bringt es ein Apache-Prozess auf satte 20 MB(angeblich). Das heißt, es passen genau 20 Apache-Prozesse in den RAM, und das ist nicht wirklich viel. Verwendest Du jetzt allerdings 2 Webserver-Instanzen, und die andere Prozesse haben lediglich 3 MB, kannst Du den RAM aufteilen, jeder bekommt 200 MB, das heißt 10 Prozesse mit PHP(+Oracle-Client), und 70 Prozesse für statische Inhalte passen in den RAM. _Das_ ist der Hauptgedanke von mir gewesen.
Alles in Hinblick auf die Ausgangsdiskussion in der es darum ging ob sich ein dedizierter
Apache lohnt (weil beim forken zuviel Overhead entsteht) oder nicht.
Habe ich das jemals als Begründung angeführt?
Und ich war eben
der Meinung so groß ist der Resourcenverbrauch nicht als das sich ein abgespeckter Apache
lohnt.
Och, wenn Du komplexe Scripte/Module hast ist es möglicherweise über eine DSL-Leitung kein Problem den Server in Bedrängnis zu bringen!
(und wenn schon, dann würde ich vor dem "dicken" Apache eher ein Squid setzen als ein abgespeckten zweiten Apache)
Ja, wenn das denn mit SSL so einfach wäre ;-)
Grüße
Andreas