Hi!
Wie kann ich Apache tunen um die Scripte laufen zu lasen?
Ein Reverse-Proxy davor setzen
Hm. Kannst du noch schnell sagen, warum, und was für ein Proxy das sein soll?
z.B. 2. Apache mit mod_proxy oder Squid. Hat den Vorteil dass die Webserver besser für die entsprechenden Einsatzzwecke optimieren kannst. Mal angenommen Du hast in PHP sehr viele Module, womöglich das Schlachtschiff von Oracle-Client, dann werden Deine Apache-Prozesse schnell 12, 15 oder sogar 20 MB groß. Das ist natürlich absolute Ressourcen-Verschwendung für einen Requests der vielleicht nur eben ein 1-pixel.gif oder nur einen 304-Header senden muss. Dazu kommt, wenn Du dabei noch keep-alive verwendest, dass zig dieser Monster-Prozesse zwar im RAM liegen, aber für ne ganze Zeit nichts machen, weil sie an der aktuellen TCP-Verbindung auf einen neuen Request warten. Bei statischen Inhalten ist das prima, aber bei dynamischen wird das schnell teuer, weil Dein RAM in null-komma-nix voll ist und angefangen wird zu swappen.
Auch können persistente DB-Verbindungen in diesem Fall zu einem Problem/Hindernis werden.
Wenn Du jetzt aber einen 2., viel schlankeren Apachen davor setzt, der für statische Inhalte optimiert ist, und die Requests an PHP-Scripte an den anderen Apachen weiter leitest, dann hast du verhältnismäßig kleine Apache-Prozesse die sich um statischen Inhalt kümmern, und die großen Apache-Prozesse nur für die Requests an dynamische Inhalte.
Wenn man sogar einen Squid-Cache als Reverse-Proxy verwendet, dann wird das ganze nochmal schlanker, denn dieser kann dann die statischen Inhalte direkt im RAM halten. Das kann der Apache zwar auch, aber zum einen ist dies AFAIK noch nicht so 100%ig stabil implementiert, und der Squid ist gegenüber dem Apachen keine eierlegende Wollmilchsau, also erheblich Ressourcen-schonender als ein Apache je sein kann.
Bei der Gelegenheit sollte man sich auch mal den lighttpd ansehen, ist ein auf Performance getrimmter, sehr schlanker Webserver, welcher hervorragend mit PHP über fastcgi zusammenarbeitet.
http://incremental.de/products/lighttpd/download/
Grüße
Andreas