lighttpd + FastCGI vs. lighttpd + Mongrel
Bis jetzt lief eine Railsanwendung (typo Blog) mit FastCGI und lighttpd. Diese zwei Prozesse haben extrem viel Arbeitsspeicher verbraucht (~150MB) obwohl die Seite nur sehr wenig Traffic hat. Weiterhin stieg der genutze Arbeitsspeicher ständig an und wurde nicht wieder freigegeben.
Ich bin jetzt zu Lighttpd mit Proxy auf Mongrel (1 Prozess) gewechselt. Bis jetzt sieht es so aus, als wenn diese Variante viel performanter und weniger speicherhungrig ist, obwohl Mongrel bis jetzt genauso viel RAM verbraucht wie ein Ruby Prozess der FastCGI Lösung. Mal sehen wie sich das weiterentwickelt...
Einfach standardmässig einen Proxy erzeugen in der lighttpd.conf
proxy.balance = "fair"
proxy.server = ("/" =>
(
( "host" => "127.0.0.1", "port" => 11000 )
)
)
In dein RailsRoot Verzeichnis wechseln und mit
mongrel_rails start -e production -d -p 11000 -a 127.0.0.1 --user www-data --group www-data
Mongrel starten. Die Befehle können natürlich nach Bedarf angepasst werden.