Ich hatte mal wieder meinen „Plesk-Moment“. Einer von diesen Augenblicken in denen man sich fragt: „Was zum Geier macht diese Software da?“ Oder „Das ging doch bis gestern noch, warum jetzt nicht mehr?“
Heute lief unser Server auf Grund eines PHP Chats bei einem Load von 35. Der massive Einsatz von Ajax produzierte pro Sekunde mehr php5-cgi
Prozesse als der Server abzuarbeiten in der Lage war. Moment, php5-cgi
? Für jeden einzelnen Webseitenaufruf wird ein komplett eigenständiger CGI Prozess gestartet? Wieso lief PHP nicht mehr als FastCGI
wie sonst auch immer? (Einen Vergleich der unterstützten Handler gibt es hier) Ein kurzer Blick in die Hostingeinstellungen der betroffenen Domain zeigte mir, dass Plesk nur noch die Option „CGI Applikation
“ anbot und alles andere, in meinem Fall „Apache Modul
“ und FastCGI
, einfach ausblendete.
Nach ein wenig Forschungsarbeit fand ich heraus, dass Plesk im VPS-Optimized Modus lief. Wie es dort hinein geriet und was dieser nun eigentlich genau machen soll weiß ich nicht, aber wie man es wieder in einen normalen Zustand versetzt konnte ich herausfinden, denn dazu gibt es bei Parallels sogar eine eigene Hilfeseite.
Es reicht auf einer SSH Konsole das Kommando
mysql -uadmin -p`cat /etc/psa/.psa.shadow` psa -e "update misc set val='0' where param='vps_optimized_mode_status';"
auszuführen und Plesk anschließend mit /etc/init.d/psa restart neu zu starten. Nun konnte in den Hostingeinstellungen der Domain wieder alle unterstützten Handler ausgewählt werden. Zwar verbraucht FastCGI
mehr RAM, aber die einzelnen Prozesse werden für mehrere Anfragen wiederverwendet und verhindern so die teure Prozessinstanziierung.