php5

eAccelerator – PHP Beschleuniger Installation unter Debian 5 (Lenny) und Ubuntu

eAccelerator – kleines Programm mit großer Wirkung.

eAccelerator ist ein Tool, welches die Ausführung des PHP-Codes unter Apache beschleunigt. Der Code wird bereits in kompiliertem Zustand gespeichert, wodurch das Kompilieren bei jeden Seitenaufruf fast gänzlich wegfällt. Der bereits vorkompilierte Code wird im Shared Memory gespeichert und von dort direkt aufgerufen. Außerdem wird die Laufzeit optimiert, um die Ausführung des PHP-Codes zu beschleunigen.

Persönliche Erfahrungen mit eAccelerator:

Da wir vor einiger Zeit eine etwas stärker frequentiertere Seite hosteten und wir ziemliche Performanceprobleme hatten, gab mir ein befreundeter Administrator den Tipp eAccelerator auszuprobieren. Ich war erst skeptisch und notierte mir die genauen Ladezeiten der Seite, um nach der Installation von eAccelerator einen Vergleichswert zu haben. Die Performancesteigerung war in meinem Fall nach der Installation ganze 89,5%.

Für eAccelerator gibt es leider keine offiziellen Pakete unter den Sources, darum müssen wir die Software per Hand downloaden und kompilieren. Dieser Schritt ist allerdings nicht allzu schwer:

Voraussetzungen installieren:

Damit wir eAccelerator für das System kompilieren können, sind einige Pakete dafür notwendig, die in “build-essential” enthalten sind, ausserdem benötigen wir das php5-dev Paket. Dieses installieren wir über folgenden Befehl:

apt-get install build-essential php5-dev

eAccelerator downloaden und entpacken:

Wir holen uns nun die aktuellste Version von eAccelerator bei der Herstellerseite und speichern diese nach /usr/src. Derzeit ist die aktuellste Version 0.9.5.3.

cd /usr/src
wget get http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.zip

Der eAccelerator befindet sich nun gepackt in unserem /usr/src Verzeichnis. Diesen werden wir nun entpacken.

unzip eaccelerator-0.9.5.3.zip

eAccelerator wurde und erfolgreich in /usr/src entpackt.

eAccelerator kompilieren und konfigurieren:

Mit folgenden Befehlen kompilieren/installieren wir eAccelerator für unser System

cd eaccelerator-0.9.5.3
phpize
./configure
make
make install

Nachdem diese Schritte abgeschlossen sind, teilen wir unserem PHP mit, dass wir gerne eAccelerator verwenden möchten. Dazu legen wir eine neue ini Datei in unserem Standard PHP Verzeichnis an

vi /etc/php5/conf.d/eaccelerator.ini

Die gerade erstellt eaccelerator.ini befüllen wir nun mit folgendem Standard-Inhalt:

extension="eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/var/cache/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"

Genaure Informationen zu den Einstellungen findet ihr Hier

Damit eAccelerator auch die Cachefiles auf unser Festplatte ablegen darf, erstellen wir den Ordner, den wir in der .ini Datei konfiguriert haben (/var/cache/eaccelerator) und vergeben auch die entsprechenden Rechte.

mkdir /var/cache/eaccelerator
chmod 777 /var/cache/eaccelerator

Als letzten und abschließenden Schritt starten wir nun unseren Apache neu:

apache2ctl restart

oder

/etc/init.d/apache2 restart

eAccelerator Controlpanel aktivieren

Danke an Peter für den Tipp und die Beschreibung für das Controlpanel

Die Datei control.php muss lediglich aus dem Verzeichnis /usr/src/eaccelerator-0.9.5.3 in das Webserververzeichnis kopiert werden:

cp /usr/src/eaccelerator-0.9.5.3/control.php /var/www/

Nun editieren wir die Datei control.php…

vi /var/www/control.php

…und ändern die Logininformationen, mit denen auf control.php zugegriffen werden kann (“admin” und “eAccelerator” entsprechend ersetzen)

$user = “admin“;
$pw = “eAccelerator“;

Als Abschließenden Schritt muss dem Controlpanel noch die notwendige Berechtigung gewährt werden, um Daten aus eAccelerator auszulesen und auch Kommandos zu senden. Dazu bearbeiten wir die Datei eaccelerator.ini…

vi /etc/php5/conf.d/eaccelerator.ini

…und ergänzen diese um folgenden Eintrag

eaccelerator.allowed_admin_path="/var/www/control.php"

Jetzt noch den Apache neu starten und das Controlpanel kann über http://www.mein-server.org/control.php aufgerufen werden.

Tags: , , , , , , , , , , ,

Samstag, Juni 6th, 2009 Linux 10 Kommentare
Sysadmin's Life on Facebook
ubtuntu serverubuntu server
    Bloggeramt.de Blogverzeichnis - Blog Verzeichnis bloggerei.de Blog Top Liste - by TopBlogs.de Blog Verzeichnis blogoscoop blogtotal www.beliebtestewebseite.de technorati_fav System-Administrator Blogverzeichnis RSS-Verzeichnis bloglinx Gelistet bei FeedArea.de Creative Commons License Internet & Kommunikation