PHP ist eigentlich eine interpretierte Sprache. Das heißt, dass eine PHP-Seite erst übersetzt und dann ausgeliefert wird. Das braucht natürlich unnötig Zeit, wenn eine Seite bei jedem Aufruf erneut übersetzt wird, auch wenn der Quellcode überhaupt nicht geändert wurde. Auch die Entwickler von PHP haben das schon lange erkannt, und seit der Version 4 wird der Quellcode vor der Ausführung zunächst in einen Bytecode übersetzt und dann solange gespeichert vorrätig gehalten, bis sich der Quellcode einmal geändert hat. Erst dann wird er wieder einmalig in den Bytecode übersetzt. Dadurch kann die Ausführung eines PHP-Programms bis zu achtmal schneller erfolgen.

Für normale Internetseiten ist das schon eine deutliche Verbesserung der Performance – die Besucher einer solchen Präsenz bekommen schnell die angeforderten Informationen. Dem Internetdienst Facebook, der ca. 30.000 Server betreibt, um die Last von einigen Hundert Milliarden Seitenabrufen zu bewältigen, war das nicht ausreichend, und HipHop wurde innerhalb von zwei Jahren entwickelt.

Im Grunde übersetzt HipHop den PHP-Quellcode in C++-Quellcode und diesen wiederum in Maschinensprache. So etwas nennt man einen zweistufigen Sourcecode-Transformator.

Leider hat das System auch seine Schwächen, die zurzeit in der PHP-Community diskutiert werden. Das beginnt bei Funktionen wie eval(), die mit HipHop nicht mehr laufen, mit der Verkomplizierung der Entwicklungsprozesse, der berechtigten Sorge, dass die Anwendung sich unter HipHop nicht mehr genauso verhält wie das PHP-Original und endet mit Befürchtungen um die Kompatibilität mit aktuelleren oder zukünftigen PHP-Versionen.

HipHop ist bedingt durch seine Nachteile sicher keine Universallösung zur Beschleunigung von PHP-Programmen und zum Einsparen von Ressourcen. In Einzelfällen kann es aber sehr gut helfen, bezüglich der Performance oder des Ressourcenverbrauchs einer dedizierten PHP-Lösung auf die Beine zu helfen.

Probieren Sie es doch einfach aus, wenn Sie ein vielversprechendes Projekt im Auge haben! Sie können HipHop für PHP bei github.com kostenlos downloaden. Dort finden Sie auch Dokumentation zurInstallation und eine Beschreibung des Build-Prozesses. Auch im Wiki finden sich weitere Informationen zur Arbeit mit HipHop.