- HipHop
-
HipHop Entwickler Facebook-Entwickler Programmiersprache C++, C Lizenz PHP wiki.github.com/facebook/hiphop-php HipHop for PHP ist eine freie Software, die PHP-Skripte zu Zwecken der Leistungssteigerung zu C++-Quellcode übersetzt, der dann – üblicherweise mittels g++ – in die jeweils nötige Maschinensprache übersetzt wird. Es ist damit eine alternative PHP-Implementierung, die allerdings nicht den ganzen Sprachumfang umsetzt.
Durch die Kompilierung werden deutlich höhere Ausführungsgeschwindigkeiten beziehungsweise niedrigere Prozessorlasten erreicht, als bei Interpretierung der PHP-Skripte zum Beispiel durch die Zend Engine, bei der die Übersetzung der Befehle in die Maschinensprache zumindest teilweise für jeden Gebrauch erneut erfolgen muss. Es wird eine nativ ausführbare Programmdatei erzeugt, die auch den Webserver gleich mit enthält und somit selber direkt auf HTTP-Anfragen antwortet und beispielsweise Apache unnötig macht.
Im Unterschied zu anderen Ansätzen zur Steigerung der Ausführungsgeschwindigkeit von PHP bringt HipHop eine deutliche weitere Geschwindigkeitssteigerung und verringerte Speicherbelegung – unter anderem, da damit parallele Server-Anfragen nicht in getrennten Prozessen mit entsprechend getrennten Speicherbereichen bearbeitet werden.[1] Dies kann bei Websites mit sehr hohen Besucherzahlen bedeutende Leistungssteigerungen oder Ressourcenersparnisse bewirken.
HipHop wird als Freie Software mit Quellcode unter Version 3.01 der PHP-Lizenz verbreitet. Der Quelltext umfasst mehr als 300.000 Zeilen in C++ und C. Es unterstützt PHP in Version 5.2, wobei prinzipbedingt auf einige seltener benutzte PHP-Merkmale wie die dynamischen Sprachmerkmale
eval()
undcreate_function()
verzichtet werden muss.Geschichte
HipHop wurde ursprünglich bei Facebook unter Leitung von Haiping Zhou auf CentOS- und Fedora-Systemen entwickelt. Es folgt früheren ähnlichen Entwicklungen wie phc[2] und Roadsend PHP Compiler[3][4] (kompilieren zu C) oder Quercus[5] und Project Zero[6] (Java-Implementierungen von PHP) oder Phalanger (Compiler für .NET). Es war wohl schon über zwei Jahre in der Entwicklung, bevor die Veröffentlichung als Freie Software unter der PHP-Lizenz für den 2. Februar 2010 angekündigt wurde. Der Termin konnte aufgrund technischer Probleme nicht eingehalten werden, doch am 20. Februar landete dann der Quellcode wie versprochen im Git-Repository. Die Software ist bei Facebook für die Abfertigung hunderter Millionen von Nutzern im Einsatz. In den folgenden Monaten wurde an weiterer Beschleunigung von HipHop gearbeitet und Unterstützung für einen Teil der neuen Merkmale von PHP 5.3 umgesetzt. Weiterhin wurde von Hui Chen im Rahmen eines Google-Summer-of-Code-Stipendiums die Portierung auf 32-Bit-Plattformen umgesetzt.[7]
Weblinks
- GitHub-Projekt-Seite
- Entwickler-Mailingliste
- Ankündigung der geplatzten Veröffentlichung mit ausführlicher Darstellung
Quellen
- ↑ http://www.phpclasses.org/blog/post/117
- ↑ phpcompiler.org
- ↑ www.roadsend.com
- ↑ code.roadsend.com
- ↑ caucho.com/resin-3.0/quercus
- ↑ www.projectzero.org/php
- ↑ Scott MacVicar: HipHop for PHP: six months later. In: Facebook Engineering weblog. Facebook, 13. August 2010, abgerufen am 19. November 2010 (englisch).
Kategorien:- Skriptsprache PHP
- Freies Programmierwerkzeug
Wikimedia Foundation.