Springe zum Inhalt

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:

HHVM PHP memory-day

In der linken Hälfte sieht man die HHVM-Cronjobs immer schön als Zacken. Nach der Umstellung auf PHP-FPM rechts ist wieder jede Menge Luft.

Wirklich schwierig war die Umstellung nach der Installation von PHP mit "apt install php5-fpm" (und einiger weiterer php5-Pakete) nicht. In jeder Host-Definitionsdatei für NGINX unter /etc/nginx/sites-enabled hatte ich bereits einen Eintrag "include hhvm.conf". Dieser wurde einfach durch "include php5-fpm.conf" ersetzt, wobei diese Datei folgenden Inhalt hat:

location ~ \.php$ {
	include snippets/fastcgi-php.conf;
	fastcgi_pass unix:/var/run/php5-fpm.sock;
}

Nach einem "nginx -s reload" wird dann sofort PHP benutzt. Einige dauernd laufenden Dienste auf PHP-Basis mussten noch mit einem "systemctl restart ..." neu gestartet werden und fertig war die Umstellung.

Von Seiten der Zugriffszeit erwarte ich eigentlich keine großen Änderungen, da die generierten Seiten jetzt schon dauerhaft per Memcached ausgeliefert werden. Eine Statistik der durch Google in den Webmaster-Tools gemessenen Zeiten hänge ich für einen späteren Vergleich mal an:

GWT blog.tausys.de Crawling 2016-07-05 22-50-34