Topthema

Mittwoch, 3. Februar 2010 | Topthema

PHP goes C++

(Link zum Artikel: http://www.it-republik.de/php/news/053681)
  • Teilen
  • kommentieren
  • empfehlen
  • Bookmark and Share

Diese Nachricht könnte die PHP-Welt verändern. Nachdem die Gerüchte, Facebook hätte die PHP-Runtime from the scratch neu geschrieben, bereits wild wucherten, wurde gestern das große Geheimnis gelüftet: HipHop for PHP lautet die Parole der Stunde.

Der gestrige Tag könnte zu einem großen Tag für PHP werden. Haiping Zhao lies auf facebook Developers die Bombe platzen:

Today I'm excited to share the project a small team of amazing people and I have been working on for the past two years; HipHop for PHP. With HipHop we've reduced the CPU usage on our Web servers on average by about fifty percent, depending on the page.Haiping Zhao, 2010

50 Prozent weniger CPU usage? Gekauft! Doch immer schön der Reihe nach: Was ist dieses HipHop eigentlich genau?

HipHop ist keine neue Sprache. Und es ist auch kein JIT-Compiler. Vielmehr ist HipHop ein PHP-zu-C++-Cross-Compiler. Das bedeutet, dass PHP-Code in C++-Code übersetzt wird und von dort weiter kompiliert werden kann, im Falle von Facebook mit g++. Solche Überlegungen sind übrigens nicht neu: Mit Roadsend PHP gibt es bereits eine Lösung in dieser Richtung.

Das bedeutet für Entwickler, dass sie selbst bei kleinsten Änderungen den Weg des Konvertierens und Compilens gehen müssen. Außerdem sind einige Features von PHP auf der Strecke geblieben, so zum Beispiel eval(). Aber es dürfte Schlimmeres geben.

Zum Beispiel die Tatsache, dass PHP-5.3-Features noch nicht unterstützt werden. Oder dass nur Extensions verwendet werden können, die speziell zur Verwendung mit HipHop konvertiert wurden. Um es mit den Worten von Ilia Alshanetsky zu sagen: if you need something else, you either need to convert the extension yourself, or HipHop is not for you.

Ob HipHop für die breite Masse in Frage kommt, darf also bezweifelt werden. Generell dürften sich nur wenige Anwender mit denselben Anforderungen wie Facebook konfrontiert sehen. Dennoch ist es ein interessanter Ansatz, den die Entwickler um Haiping Zhao da verfolgen, erst recht, da HipHop auf GitHub unter der Open-Source-PHP-Lizenz veröffentlicht werden wird. Das eröffnet der Weiterentwicklung ganz neue Möglichkeiten.

Zum Auftakt gab es eine Einführungsveranstaltung im Facebook-Firmensitz in Palo Alto. Am besten macht man sich selbst ein Bild davon.

Natürlich werden wir diese überaus interessante Entwicklung weiterhin verfolgen.

(tw)

Anzeige

Kommentare

Gravatar Rob 03.02.2010
um 09:10 Uhr
So sieht's bei Facebook von Innen aus? Grässlich. #zitieren
Gravatar Christoph 03.02.2010
um 19:46 Uhr
Hat sich jemand von euch schon einmal mit Roadsend PHP beschäftigt und kann näher erleutern, welche Unterschiede zwischen beiden Projekten bestehen? #zitieren
Gravatar Haimi 23.02.2010
um 13:06 Uhr
Soweit ich das verstanden habe sind die Unterschiede folgende:

Roadsend verzichtet beim Ursprünglichen Compiler (pcc) auf den Zwischenschritt über c++. Es wird der Ansatz verfolgt PHP direkt zu Kompilieren.

Mit dem Folgeprojekt raven (rphp) wurde dieser Ansatz in Richtung c++ erweitert. Was hier allerdings die Unterschiede zwischen raven und hiphop ausmacht habe ich mir noch nicht näher angesehen.
#zitieren

Folgende Links könnten Sie auch interessieren

zurück zum Seitenanfang