Migration von HHVM zu PHP

Knapp zwei Jahren wurde dieses Blog durch HHVM angetrieben. Obwohl die Unterstützung vieler PHP-Funktionen in der Vergangenheit nicht immer zufriedenstellend war, so war die Geschwindigkeit doch immer ein Hauptvorteil von HHVM. Mit zunehmender Serviceanzahl, drängte sich jedoch ein Problem immer mehr in den Vordergrund: viele Dienste benötigen einen Cronjob, welche ebenfalls in PHP realisiert sind. HHVM per CLI ist einfach zu speicherhungrig. Den Speicherhunger kann man schön in folgender Grafik erkennen:

[Mehr]
HHVM  Linux  OSS  PHP 

Gezähmter HHVM

HHVM ist eine virtuelle Maschine für HipTop, welches PHP-Skripte in Maschinencode übersetzt und anschließend ausführt. Die übersetzten Skripte werden gespeichert und bei wiederholtem Aufrufwerden die bereits übersetzte Programm ausgeführt. Dadurch ergibt sich eine extreme Leistungssteigerung gegenüber der bisher üblichen Methode, PHP-Skripte durch mod_php oder PHP per FastCGI immer wieder neu zu analysieren und auszuführen.

[Mehr]
HHVM  Linux  OSS  PHP 

HHVM und Piwik

Mit der heute veröffentlichten Version 2.14.0 der freien Analysesoftware Piwik ist nun auch ein reibungsloser Einsatz unter HHVM möglich. Das Problem der exorbitant steigenden Anzahl von gleichzeitigen Verbindungen zur Datenbank bei Verwendung der Piwik-Seiten wurde gelöst.

HHVM-Stolpersteine – Heute: MySQL-Socket

Nach einem aktuellen Update konnte HHVM auf einmal keine Verbindung mehr zu MySQL bzw. MariaDB aufnehmen. Grund ist der, dass der MySQL-Socket nun wohl unter /tmp/mysql.sock gesucht wird, wo er nicht liegt. Unter Debian liegt er vielmehr unter /var/run/mysqld/mysqld.sock. In der /etc/hhvm/server.ini ist daher folgende Einstellung einzutragen:

hhvm.mysql.socket = /var/run/mysqld/mysqld.sock

Nach einem Neustart von HHVM funktionierts dann auch wieder mit HHVM und MySQL über den Socket.

HHVM  Linux  MariaDB  MySQL  OSS 

HHVM und Debian 7: Probleme mit libstdc++6

Sofern man HHVM aus dem entsprechenden Wheezy-Repositiory installiert hat, kann HHVM aktuell nicht auf Version 3.4.1 aktualisiert werden. Vom Paket vorausgesetzt wird die Version 4.9 von libstdc++6, in Wheezy ist jedoch nur Version 4.8 vorhanden.

Der Paketmaintainer arbeitet an einer Lösung und hat diese für das Jahresende angekündigt.

Update vom 22.12.2014: Das Problem ist offensichtlich mit Version 3.4.2 von HHVM behoben.

HHVM  Linux  OSS  Wheezy 

WordPress: Nginx und HHVM

Durch Berichte über die erfolgreiche Umstellung von WordPress unter Apache und mod_php5 auf Nginx und HHVM von Sergej Müller war ich optimistisch, die dort genannten Geschwindigkeitsvorteile auch für mein Blog nutzbar zu machen.

Nginx war mir schon ein Begriff. Der alternative Webserver steht für Resourcenfreundlichkeit und Geschwindigkeit. Leider bieten viele PHP-Projekte nur Unterstützung für Apache, Beispiele für die Nginx-Konfiguration muss man sich oft mühsam selbst zusammensuchen. Nur durch Zufall stieß ich auf die Datei nginx.conf im Rootverzeichnis der WordPress-Installation, die offensichtlich durch das von mir eingesetzte Plugin W3-Total-Cache anlegt und bei Änderungen in der Konfiguration auch entsprechend angepasst wird. In dieser Datei fanden sich dann die für Nginx notwendigen Anweisungen, um korrekt mit dem Caching-Plugin zusammenarbeiten zu können.

[Mehr]
HHVM  Linux  Nginx  OSS 

Webseite flott und sicher mit Nginx, HHVM und PFS

Nach der Umstellung von Apache auf Nginx, der Installation von HHVM und dem Anpassen der HTTPS-Parameter läuft das Blog hier jetzt mehr als flott und die Sicherheit wird mit dem besten Ranking bewertet. Yeah!

Mit Nginx kann ich endlich auch die SSL-Parameter so anpassen, dass PFS unterstützt wird (was mit dem in Debian 7 mitgelieferten Apache 2.2 bisher nicht möglich war). Das Ergebnis zeigt die sehr gute Bewertung durch Qualys SSL Labs:

Qualys SSL Labs Test

Qualys SSL Labs Test

[Mehr]
HHVM  Linux  Nginx  OSS  SSL