geBIERt


Bier trinken ist wichtig!

Blog-Technik #1

Jetzt mal ein Beitrag abseits des schönen Biers: Es geht um die Technik hinter diesem Blog. Seit geraumer Zeit bin ich schon unzufrieden mit den Ladezeiten der Seite. Um die 2 Sekunden sind es pro Seitenaufruf laut diversen Test-Tools, wie z.B. Pingdom. Viel zu viel, wie ich finde.

Historisches

Der Blog wurde 2006 ja ursprünglich als Wiki gestartet. Als Software wurde Mediawiki verwendet, da das auch damals durch die Wikipedia schon einen großen Bekanntheitsgrad hatte. Dafür wurde dann natürlich auch der komplette Stack mit PHP und MySQL benötigt. Außerdem waren hier und da ein paar Plugins nötig. Da gingen dann natürlich die Probleme mit irgendwelchen Free-Hostern los: Die Abhängigkeiten konnten die wenigsten erfüllen. Außerdem gab es damals mit shared Webspace dauernd Probleme mit den Berechtigungen. Einen SSH-Zugang gab es nicht und hochgeladene Dateien hatten einen anderen Besitzer als der Webserver-User.

Ziemlich schnell bin ich dann auf vServer umgestiegen. Die gab es mit Xen oder KVM und ich konnte ein vollwertiges Linux aufsetzen und alles nach meinen Vorstellungen gestalten. Auch andere Services waren damit möglich, wie z.B. XMPP. Knackpunkt war auch hier die Performance oder die mickrigen RAM-Größen der vServer.

Vor ein paar Jahren habe ich mich deshalb auf die Suche nach einem billigen dedizierten Server gemacht und bin bei Scaleway gelandet. Dort gab es mit dem C1 einen ARM basierten Server mit 2 GB RAM und 4 CPU-Kernen. Grob gesagt eine Art Raspberry Pi im Rechenzentrum. Der lief dann bis jetzt, allerdings haben mich nun doch die Ladezeiten genervt und ich bin auf die Suche nach Alternativen gegangen.

Alternative

Zuerst wollte ich einfach daheim auf einem Raspberry Pi 3 oder Intel NUC hosten. Dank DSL100 ist das ja inzwischen möglich. Das Ganze sollte mit Docker Containern umgesetzt werden, die auf einem schmalen OS wie z.B. Alpine Linux installiert werden. Docker deshalb, da man da alle möglichen Webanwendungen fertig konfiguriert als Container bekommt. Bei der Recherche, wie ich das genau umsetze, bin ich dann irgendwie ein paar mal auf Uberspace gestoßen, das bei dem ein oder anderen Nerd sehr beliebt zu sein schienen. Ich habe mir deren Angebot dann mal angesehen und es ist halt wieder das bei mir unbeliebte shared Hosting, allerdings diesmal mit SSH. Außerdem läuft der Webserver unter dem gleichen Besitzer wie die hochgeladenen Datein. Berechtigungsprobleme lassen sich also selbst lösen. Über Geschwindigkeitsprobleme hatte niemand geklagt und dieser Bericht hat mich dann so weit überzeugt, mal den kostenlosen Testmonat zu starten, den Blog zu migrieren und mal die Ladezeiten anzuschauen.

Migration

Ich will mich hier jetzt nicht über die Details auslassen, aber mit dem Plugin All-in-One WP Migration klappte das wunderbar, ohne alles per Hand machen zu müssen.

Ergebnis

Was soll ich sagen: Ich habe diverse Tools probiert, um die Ladezeiten der Seite zu messen. Über den Daumen ist das Ergebnis, dass die Ladezeiten von 2,1 s beim Scaleway Server auf ca. 400 ms bei Uberspace runter sind. Und auch ohne Testtool merkt man sofort: Die Seite lädt nun zügig, so wie man sich das als Besucher vorstellt.

Das verwundert mich aber auch nicht, denn momentan sind nur 107 Nutzer auf “meinem” Server aufgeschaltet. Und der Server ist keine Gurke: 16 GB RAM und laut /proc/cpuinfo ist ein Intel Core Processor (Skylake) mit 20 Kernen verbaut. Wie viele davon Hyperthreading geschuldet sind weiß ich nicht. Interessiert mich auch nicht.

Bleibt jetzt nur zu hoffen, dass die Nutzeranzahl nicht in die Höhe springt und das auch so bleibt.