Showdown: HHVM vs. PHP5-fcgi vs. PHP5-FPM

14. April 2014 von Kevin Häfeli Veröffentlicht unter Hosting/Zusatzdienste Verschlagwortet mit , , , , ,

Wie unser Blog-Beitrag vom 3. April 2014 über die Installation von HHVM bereits darstellte, ist die Installation und Konfiguration von HHVM via fastcgi und Apache2 sehr einfach.
Doch was ist der Nutzen von HHVM gegenüber dem etablierten PHP-fcgi und dem als wesentlich schneller bekannten PHP5-FPM (FastCGI Process Manager)?

Weiter stellt sich auch die Frage, ob tatsächlich soviel Performance eingespart und die PHP Applikationen beschleunigt werden kann, wie Facebook anpreist? Und funktionieren etablierte CMS wie TYPO3 6.2 LTS oder Blogssysteme wie WordPress „out-of-the-box“?

Kompatibilität

In einem ersten Test funktionierte eine aktuelle WordPresss Installation ohne Einschränkungen. (Dies kommt vermutlich auch daher, dass die hhvm.com Webseite mit WordPress betrieben wird und daher die Kompatibilität zu HHVM voran getrieben wurde.)

Unter TYPO3 6.2 LTS war vorerst eine Anpassung des Cores notwendig, welche die PHP_SAPI bzw. Fastcgi Modul Prüfung mit HHVM („srv“) erweiterte. Die Anpassung wurde unter forge.typo3.org gemeldet beziehungsweise zur Verfügung gestellt und ist dann vom Core Team verbessert und in rekordverdächtigen 5 Tagen in den aktuellen TYPO3 6.2 Master Branch gemergt worden.

Es existiert seitens HHVM noch ein Bug, welcher HHVM nach erfolgreichen TYPO3 Login crashen lässt. Dieser Fehler wurde auf Github als Issue gemeldet und wird durch Facebook bzw. die HHVM Community hoffentlich ebenso zeitnah behoben.

Bis das TYPO3 Backend unter HHVM getestet werden kann, benötigt man folglich noch ein klein wenig Geduld. Das Frontend konnte aber mit unserem default Setup problemlos ausgeliefert und für die Performance Tests verwendet werden.

Der Showdown

Für den Showdown wurde ein minimales Setup mit 1GB Ram und 2 CPU Cores unter Debian Wheezy verwendet. Als Webserver die aktuellen Packages von Apache 2.2 und Nginx 1.2. MySQL 5.5 diente als Datenbank.

Wie die nachfolgenden Grafiken aufzeigen, ist HHVM im Vergleich zu den traditionellen Varianten (mit unserem Setup) bis zu 7x schneller:

TYPO3 6.2 (Introduction Package)

typo3_6_2

 

TYPO3 4.5 (Introduction Package)

typo3_4_5

 

WordPress (out of the box)

wordpress

Dies bestätigt die von Facebook durchgeführten Performance Tests und zeigt auf, wie viel Potential HHVM für die Zukunft hat. Bis HHVM für den kommerziellen Einsatz geeignet ist, wird aber noch etwas Zeit vergehen.

Möchten sie Ihre Webseite bereits jetzt beschleunigen? Mit dem Varnish Cache haben wir eine etablierte Lösung für sie bereit, welche bis zu 100fache Performance-Steigerungen bietet. Weitere Infos finden sie hier.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

2 Gedanken zu “Showdown: HHVM vs. PHP5-fcgi vs. PHP5-FPM

    • Hi Yohannes,

      Yes. Our next generation hosting is running with nginx.
      as cgi we are using hhvm with a fallback to php-fpm.
      But without mariadb, because there is no official maintained debian wheezy package available atm.

      If you’re interested to run TYPO3 with nginx / HHVM / mariadb and the FPM fallback, I would recommend you the blogpost from ph-bergsmann:
      http://www.ph-bergsmann.com/typo3/2014/04/04/typo3-with-hhvm/

      and yes, most of our installations have a Varnish Cache in front of it, with our TYPO3 extension (to handle the ban requests):
      https://github.com/snowflakech/typo3-varnish

      regarding redis: we’re using it sometimes as message queue. For the TYPO3 cache we still use memcache.

      Cheers,
      Kevin