Webseitenoptimierung Teil 1: PHP Codeoptimierer
Ich beschäftige mich gerade mit der Optimierung der Performance von Webseiten, neben den vielen, vielen anderen Dingen, welche irgendwie immer auf meinem Schreibtisch landen.
Zunächst habe ich mir die Beschleunigung von PHP vorgenommen. Natürlich kann man anfangen den Code zu verbessern, Zugriffe beschleunigen und so weiter, aber ich war jetzt erstmal an einer schnellen Lösung interessiert. Was läge da also näher sich einen der vorhandenen PHP-Beschleuniger anzusehen.
Das Los viel auf eAccelerator und natürlich APC: Alternative PHP Cache. Zunächst habe ich mir einige Benchmarks angesehen und mich dann für eAgestartetccelerator entschieden. Die Ergebnisse sind nicht sehr unterschiedlich, aber eA scheint die Nase etwas vorn zu haben und ist mir irgendwie auch etwas sympatischer.
Da ich wenig Lust verspüre die Pakete selbst zu bauen, nehme ich einfach die von Andrew McMillan (btw: Danke Andrew!) und ergänze meine sources.list um
deb http://debian.mcmillan.net.nz/debian etch awm
Danach installiere ich noch eben das Paket
apt-get install php5-eaccelerator
und wenn ich mal viel Zeit habe, importiere ich auch noch den GPG-Schlüssel von Andrew…
Noch eben schnell /etc/php5/conf.d/eaccelerator.ini anpassen (den Kommentar entfernen, den Apache neu starten und schon bin ich damit fertig.
Die Ausgabe von phpinfo() verrät mir ein paar grundlegende Einstellungen und Status des neuen Beschleunigers und ich sehe, dass er fuenktioniert. Erste Versuche mit ApacheBench zeigen mir, dass meine Seite jetzt etwa doppelt so schnell ist wie vorher, das ist ja schon mal der erste Schritt.
Was mir jetzt noch fehlt, ist das eAccelerator Control panel, welches sich leider nicht in Andrews Paket befindet. Kein Problem, das finde ich ja im Repository. In der Datei passe ich jetzt noch die Zugangsdaten an und in der schon bekannten /etc/php5/conf.d/eaccelerator.ini ergänze ich noch accelerator.allowed_admin_path=/der/pfad/zur/control.php.
Jetzt habe ich nicht nur die volle Kontrolle über den Cache, sondern kann mir auch noch die Statistiken ansehen.