Facebook hat ein internes Tool für Entwickler vorgestellt, mit dem es seinen Programmierern gelungen ist, die Site zu beschleunigen: HipHop for PHP. Es wandelt PHP-Code in C++-Code um, der mit dem GNU-Compiler g++ kompiliert werden kann. Facebook will es jetzt unter der Open Source PHP License veröffentlichen.
Wie Haiping Zhao im Facebook-Developer-Blog schreibt, hat das Werkzeug seine Ursprünge im Programmierwettbewerb Hackathon von vor einigen Jahren. Mittlerweile ist es auf über 300.000 Zeilen Code angewachsen und hat 5000 Testläufe hinter sich.
Facebooks Website war ursprünglich in der Skriptsprache PHP geschrieben. PHP ist leicht zu verstehen und zu schreiben, aber langsamer als kompilierte Sprachen wie C++ oder Zwischencode-Sprachen wie Java. Um die Performance zu verbessern, führte man PHP-Erweiterungen in C++ ein. Die Anforderungen an Programmierer sind hier aber ungleich größer: Sie müssen nicht nur C++, sondern auch die nötigen APIs der Entwicklungsumgebung Zend gut kennen. Das erschwert Wartungsarbeiten am Code massiv.
Aus diesem Dilemma ist Haiping zufolge HipHop for PHP hervorgegangen, das die Lücke zwischen PHP und C++ schließt. Dem Facebook-Programmierer zufolge senkt der Einsatz von HipHop die Serverlast um durchschnittlich etwa 50 Prozent, weshalb weniger Server-CPUs angeschafft werden müssten. HipHop-Code mache über 90 Prozent von Facebooks Traffic aus.
HipHop produziert Haiping zufolge hoch optimierten C++-Code: So werde aus dem PHP-Code der Typ von Variablen möglichst genau erschlossen, um Speicherplatz zu sparen. Der eigentlichen Code-Erstellung, die recht direkt erfolge, gehe eine statische Analyse von Abhängigkeiten und Deklarationen voraus.
Als Nebenprodukt hat Facebook ergänzend HPHPi erstellt, einen experimentellen Interpreter für die Entwicklung. Er mache es überflüssig, PHP-Code zwischendurch immer wieder zu kompilieren, und helfe, Fehler in HipHop selbst zu finden. Außerdem verzichte man auf einige selten genutzte Features wie eval().
Bösartige QR-Codes, die per E-Mail versendet werden, eignen sich sehr gut, um Spam-Filter zu umgehen.
Unsichere Websites und Phishing-Mails in Verbindung mit Black Friday können kauffreudigen Konsumenten zum Verhängnis werden.
Malware SmokeLoader wird weiterhin von Bedrohungsakteuren genutzt, um Payloads über neue C2-Infrastrukturen zu verbreiten.
Bankhaus Metzler und Telekom-Tochter MMS testen, inwieweit Bitcoin-Miner das deutsche Stromnetz stabilisieren könnten.
Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…
Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…