[PHP] HipHop

Dieses Thema im Forum "Webentwicklung" wurde erstellt von Smokers, 30. Oktober 2010 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 30. Oktober 2010
    HipHop

    Hat jemand Erfahrung damit?
    Jemand schonmal eingesetzt?

    Habe den aktuellen Artikel in der c't gelesen da ich im Zug ne Weile unterwegs war und es klang ganz angenehm.

    Welche Performance-Steigerungen bringt es wirklich?!
    Es sind in der c't zwar etliche Funktionen angegeben wie ack() oder fib() etc pp
    jedoch sind die ja kaum für reale Webapplikationen vergleichbar.

    Auf Fb soll es angeblich Steigerungen von bis zu 50% bringen. Kann das jemand bestätigen?!
    Welche Probleme treten auf.

    Wie siehts aus mit HipHop vs. Apache Modulen?!


    vllt wirds nen interessanter Thread ;-)

    lg
     
  2. 30. Oktober 2010
    AW: HipHop

    ich glaub du verwechselst da was. hiphop ist ein von den facebook-leuten erstellter php-interpreter.
    im gegensatz zum standard-interpreter (zend-engine 1/2/3) soll "hiphop" wohl komplett mit c++ erstellt worden sein und den php-code 50% schneller ausführen.

    was genau an der engine anders sein soll weiß ich nicht, aber 50% steigerung lässt schon sehr auf nativen maschinen-code schließen (zend-engine ist eine VM [wie bei java]). ich werd das mal verfolgen.

    // hatte recht:
    HipHop - Facebook beschleunigt PHP - Golem.de

    dieses konzept ist garnicht so neu. die webkit entwickler haben für javascript ein ähnliches verfahren entwickelt namens "SquirrelFish" - wobei dort der code direkt in maschinen-code umgewandelt und ausgeführt wird.

    neben der geschwinigkeit und performance ist aber auch ein nachteil, denn jedes programm hat irgendwo bugs. und das ist schon ein unterschied ob der code von einer virtuellen-maschine ausgeführt wird (eingeschränkter zugriff über APIs) oder direkt in der cpu (wo man wirkliches alles anstellen kann).
     
  3. 30. Oktober 2010
    AW: HipHop

    ja ne mir war schon klar was das Ding macht und wie und wo ;D
    Auch das manche Funktionen wie create_function() nicht unterstützt werden oder eval().

    Wollte nur mal ne kleine Diskussion darüber starten und wie weit die Steigerungen im normal-Betrieb wirklich machbar sind.

    Is ja schön das die ackermann Funktion 8 mal schneller läuft, das sagt mir aber nix ob nen Wirdpress auch soviel an geschwindigkeit zunehmen würde.


    HipHop setzt halt den PHP code in C++ Code um und lässt den so compilierten Apache + deinen PHP code auffer platte und startet diesen dann als serverdienst.

    also meinst du es hat halt sicherheitstechnische bedenken?!
    ich meine wenn der dienst wieder als eigenständiger benutzer läuft meinst du nicht das es wie beim apache dann halt sicher genug ist?!
     
  4. 31. Oktober 2010
    AW: HipHop

    naja, diese tests von der c't sind eigl unsinnig, denn dort werden äpfel mit brinen verglichen.
    aber egal, interessant is das schon.

    ist es denn nicht möglich die binarys als apache-modul einzubinden und anfragen drauf umzuleiten oder via cgi was zu basteln?
     
  5. 31. Oktober 2010
    AW: HipHop

    Ich hab ja kein direktes Beispiel, war halt nur allgemein.
    Ich weiß ja das man Prozesse oder teile des codes als modul auslagern kann , das is ja dann in c++ geschrieben.

    Allerdings würde es mich halt interessieren wie es zB bei einem VB so wie hier von RR aussehen würde.

    Würden wir in so einer Umgebung auch auf ca 50% mehr leistung kommen?
    kommen dort mehr / weniger % zustande , lohnt sich sowas? etc pp
     
  6. 31. Oktober 2010
    AW: HipHop

    klar, durch diesen compiler bekommst du auf allen systemen nen enormen performance-schub.
    du musst bedenken, dass mit "HipHop" kein php-code mehr ausgeführt wird, sondern der ganze content direkt von ner nativen c++-binary erzeugt und ausgeliefert wird.

    - keine interpreation
    - keine jit-kompilierung
    - keine virtuelle-maschine
    + zugriff auf alle resourcen und features des systems (RAM, x64-erweiterungen)
    + interaktion mit apache auf c ebene (kein mittler zwischen script und apache notwendig)

    selbst bytecode-caches haben keine chance gegen ne navtive binary

    wobei man sagen muss, dass man auf heutigen servern erst ab sehr sehr vielen hits nen unterschied merken würde. im normalfall (gute programmierung) läuft php-code auch in 0.05sec durch.
     
  7. 31. Oktober 2010
    AW: HipHop

    diese aussage ist so pauschal geschrieben wahrscheinlich falsch.

    konnte z.b. nicht erkennen, dass hiphop einen user-cache zur verfügung stellt, wie ihn APC besitzt.

    in verbindung mit intensiven datenbankabfragen dürfte apc hier dann doch deutliche vorteile haben...
     
  8. 31. Oktober 2010
    AW: HipHop

    naja, aber was bringt drüber reden wenn keiner hier damit erfahrung gemacht hat. es bleiben ja noch einige fragen offen:

    - was passiert mit include/require in if/else abfragen? werden die trotzdem kompiliert und statisch gelinkt? was blöd wäre.
    - was passiert mit der dynamischen typisierung? dazu müsste der code auch managed sein.

    //ps: nette signatur hast du da. so nebenbei.
     
  9. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.