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 bzip2
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 http://bart.eaccelerator.net/source/0.9.6/eaccelerator-0.9.6.tar.bz2
Der eAccelerator befindet sich nun gepackt in unserem /usr/src Verzeichnis. Diesen werden wir nun entpacken.
tar -xjvf eaccelerator-0.9.6.tar.bz2
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.6
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="32"
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
Der Wert “eaccelerator.shm_size” definiert den maximalen Speicher, welchen sich eAccelerator nehmen darf und sollte daher behutsam angepasst werden.
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.6 in das Webserververzeichnis kopiert werden:
cp /usr/src/eaccelerator-0.9.6/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.
Und so sieht das eAccelerator Control Panel dann aus:

Ähnliche Artikel:
- Webserver (LAMP) Installation unter Debian 5 (Lenny) und Ubuntu
- HowTo: Icinga – Web Frontend 1.0.1 (neues Interface) Installation unter Debian 5 (Lenny)
- Java Installation unter Debian 5.0 (Lenny)
- Icinga – Open Source Monitoring – Installation unter Debian 5 (Lenny) mit IDOUtils und MySQL Datenbank
- VMware Server 2 installation unter Debian 5 (Lenny)
18 Kommentare zum Thema eAccelerator – PHP Beschleuniger Installation unter Debian 5 (Lenny) und Ubuntu
Leave a Reply
Letzte Artikel
Translator

News Empfehlungen
- Wireshark mit zahlreichen Verbesserungen (heise open news)
- Red Hat: Mit der Cloud zur Platform as a Service (Linux-Magazin Online News)
- Bossie Awards 2010: Beste Open-Source-Software-Pakete des Jahres (TecChannel | Alle News)
- Kritische Lücken bleiben immer öfter ungepatcht (heise Security)
- Apple Special Event findet am 1. September statt (hack2learn)



Einer der wenigen, wirklich hilfreichen Artikel bei Google. Vielen Dank!
Fertige Pakete für Debian Lenny gibt es unter http://www.schnuckelig.eu/blog/debian-lenny-eaccelerator-packages-amd64-20090527 zur Zeit jedoch nur für amd64, i386 folgt noch.
Ich rate eigentlich immer von 3. Repositories bzw. fertig Kompilierten Komponenten ab – vom Sicherheitsaspekt aus!
Es ist zwar nicht besonders schwer, eAccelerator zu installieren, aber es ist trotzdem ein sehr hilfreiches und gutes Tutorial. Danke!
Vielen dank für die Docu, ist eh einfach eigentlich aber ersparrt einem lange config suche
[...] Christian Scholz Post verschicken Post drucken Ich bin gerade auf einem anderen Webblog auf einen Artikel gestoßen, in dem die Installation und Verwendung des eAccelerators beschrieben [...]
Hallo, könntest du noch eine Anleitung posten wie ich das Contropanel von eaccerlator zum laufen bekomme? Die anleitung auf der Eaccerlator Homepage funktioniert nicht so recht. Dankeschön!
Controlppanel? davon habe ich bisher noch nichts gehört. werde mich aber die Tage mal schlauer machen.
Controlpanel
Merci beaucoup für die Anleitung!
die Sache mit dem Controlpanel ist eigentlich ganz einfach:
# Datei “control.php” aus dem Source-Directory ins htdoc-Directory kopieren
cp /usr/local/src/eaccelerator-0.9.*/control.php /var/www/htdocs
# Authentifikation zu Beginn des Skripts anpassen
vim /var/www/htdocs/control.php
# eaccelerator Konfiguration in der php.ini um folgenden Eintrag ergänzen:
# eaccelerator.allowed_admin_path=”/var/www/htdocs/control.php”
Anschließend lässt sich das Control Panel unter http://www.mein-server.org/control.php aufrufen. Es kann der Cache gelöscht werden sowie besichtigt werden, wieviele und welche PHP-Scripts gecacht wurden.
Beste Grüße, Peter
Hallo Peter,
tolle Sache mit dem Controlpanel. Werde ich gleich heute abend ausprobieren und den Artikel um den Bereich ergänzen!
Vielen Dank für deine Mühe, dadurch lebt ein Blog – durch die Leser!
Patrick
Hi, mittlerweile gibt es eaccelerator bereits in Version 0.9.6 …
Ja, Danke für die Info.
Neue Stable Version ist 0.9.6 welche nun auch die PHP Version 5.3 unterstützt.
Werde ich mir die Tage mal ansehen und den Artikel ggf. anpassen.
Alle Infos vorab gibts hier: http://eaccelerator.net/wiki/Release-0.9.6
Ich habe eine vServer auf dem ispCP läuft und habe eben die neue Version installiert und es kam bei mir ein 500er Fehler. Woran kann das liegen?
Viele Grüße
Veolore
Hi Veolore,
ich kenne leider ispCP zu wenig, als dass ich irgendwelche Vermutungen anstellen würde. Lief der Kompiliervorgang erfolgreich durch, und ist das Cache Verzeichnis auch beschreibbar?
Gruß
Patrick
Über welches Programm muss ich die befehle eingeben?
Ich habe es schon mit cmd probiert aber ich verstehe alles wie es funktioniert natürlich nur schriftlich leider noch nicht praktisch aber wo muss ich das eingeben?
MfG: Killer95
Hallo Killer95,
dir ist schon bewusst das der Guide auf Linux speziell auf Debian/Ubuntu bezogen ist und nicht auf Windows?
gruß
Patrick
ok danke für die mitteilung aber wie installiere ich es dann auf windows da muss ich doch auch solche befehle ausführen
Sehr gutes Tutorial, wir haben vorher den Zend Encoder benutzt, der bringt zwar ca. 20% mehr Performance als eA, aber der Lizenzpreis spielt bei uns neuerdings auch eine Rolle. Drum haben wir uns für eA entschieden und sind sehr glücklich damit.
Die Anleitung war sehr hilfreich und das Ergebnis hat sehr gut gefruchtet.