Performance

Serverladezeit überwachen

Website Monitoring Magazin

Die Geschwindigkeit einer Webseite ist eines der wichtigsten Qualitätskriterien. Sollte ein Online-Shop, eine Firmenseite oder eine redaktionell gepflegte Seite langsam sein oder vielleicht nur so wirken, kann dies schnell potenzielle Kunden bzw. Nutzer vergraulen.

Was ist die Serverladezeit?

Die Geschwindigkeit eine Webseite setzt sich aus zwei Bestandteilen zusammen. Der Browserladezeit und der Serverladezeit. Also der Zeit, die ein Browser, wie z.B. Chrome oder Firefox, benötigt um den Inhalt zu rendern und dem Nutzer zur Verfügung zu stellen und der Zeit, die der Server benötigt, um das HTML für den Browser zu generieren. Die Serverladezeit ist auch als "time to first byte" (TTFB) bekannt.

Wieso ist die Serverladezeit wichtig?

Es gibt einige Gründe, warum die Ladezeit auf dem Server eine wichtige Rolle spielt. Wir finden die folgenden drei dabei am relevantesten.

Versetzen wir uns zuallererst in unseren Kunden. Dieser ist Geschwindigkeiten von Google, Amazon und Facebook gewöhnt. Weichen wir davon negativ ab, kassieren wir schon einmal ein paar Minuspunkte, was vertrauen angeht. Gerade im E-Commerce muss man sich immer wieder den Vergleich gefallen lassen. Ist vielleicht nicht immer ganz fair, da beim weltgrößten Online-Händler tausende von Entwicklern unter Vertrag stehen. Trotzdem machen sie das gleiche wie der Online-Händler um die Ecke: Sie verkaufen dem Endkunden Produkte.

Auch für Suchmaschinen wird die Geschwindigkeit immer wichtiger. Zum einen, weil sie benutzerfreundliche Webseite lieber empfehlen wollen, als welche, die nicht ordentlich benutzt werden können, zum anderen aber - und das ist vielleicht der wichtigere der beiden Punkte - müssen sie eine Webseite indizieren, damit sie den Inhalt kennen. Da die meisten Anfragen durch Suchmaschinen nicht durch den Browser gehen ist die Crawl-Geschwindigkeit einzig und alleine von der Serverladezeit abhängig. Ist der Server langsam, werden Google und Co. seltener vorbeikommen bzw. es wird länger dauern, bis alle Seiten im Suchindex gefunden werden.

Aus technischer Sicht gibt es einen weiteren, sehr relevanten, Punkt. Skalierbarkeit. Zeit die um Browser passiert, passiert im individuellen Browser des Nutzers. Das skaliert schon mal ganz gut, weil wir pro Benutzer einen Browser und einen Computer dahinter haben. Tausend Nutzer, tausend Computer. Beim Server sieht es ganz anders aus. Tausend Nutzer, ein Server. Klingt schon ein wenig unfairer. Je kürzer ein Stück Software braucht, um das HTML zu berechnen, umso mehr Anfragen kann sie beantworten. Und umso günstiger wird der Betrieb einer hochfrequentierten Webseite. Je größer die Serverladezeit einer Webseite ist, umso höher ist auch die Chance, dass sie unter hoher Last schließlich zusammenbricht.

Zusammenfassend sind diese drei Punkte für den Erfolg einer Webseite wichtig:

  • Performance als Form der Benutzerfreundlichkeit
  • Suchmaschinenfreundlichkeit durch bessere indexierbarkeit
  • Niedrigere Serverkosten

Schön, dass du unser Magazin liest. Was aber noch schöner wäre, ist, wenn du unseren Service einmal ausprobierst. koality.io bietet umfangreiches Website Monitoring speziell für Webprojekte. Erreichbarkeit, Performance, SEO, Sicherheit, Inhalt und Technik.

Ich möchte koality.io kostenlos ausprobieren

Wer beeinflusst die Serverladezeit?

Den größten Anteil an der Ladezeit, die eine Applikation auf dem Server benötigt, hängt von der eingesetzten Software ab. Dummerweise hat man diese aber nicht immer in der Hand. Ein Shop, der auf Shopware beruht, kann nun mal nicht schnell sein, als eine Neuinstallation von Shopware. Das Gute ist, die meisten Standard-Anwendungen sind bereits schnell, da sie sonst wohl nicht von so vielen Nutzern eingesetzt werden würden.

Wer Software in Reinform einsetzt, muss sich in den meisten Fällen keine Gedanken über Geschwindigkeit machen. Macht aber kaum jemand. Wir kennen fast keinen einen Shop, der ohne ein einziges Plugin auskommt. Wir wollen uns ja alle ein wenig abheben und das geht nicht ohne Individualisierung.

Zusätzlich spielt natürlich die Leistung des eingesetzten Servers eine Rolle. Schnelle Server, mit vielen Kernen bedeutet eine höhere Chance die Seite schnell auszuliefern, wenn gleichzeitig mehrere Nutzer darauf sind.

Zusammengefasst sind also drei Punkte am relevantesten:

  • Eingesetztes System
  • Eingesetzte Plugins
  • Server-Leistung

Wie messen wir die Serverladezeit?

koality.io misst im Stundentakt die Serverladezeit (time to fist byte). Dabei ist wichtig zu wissen, dass unser Überwachungstool, die Webseiten immer durch einen echten Browser (Chrome) aufruft. Der Server liefert die Seite also immer so aus, als wäre ein echter Kunde auf ihr unterwegs. Für die Messung benutzen wir die sogenannte Navigation Timing API, die mittlerweile in allen gängigen Browsern zum Standard gehört.

Was der Time to first byte hierbei am nächsten kommt (DNS und Co. gehen vergleichsweise schnell) ist der responseStartWert, welchen wir hierfür auch verwenden.

Wer sich alle seine Werte einmal ausgeben lassen möchte, der kann in einem Browser seiner Wahl in der Entwicklerkonsole folgenden Code eingeben:

window.performance.timing

Danach bekommt man alle Messwerte aus dem Diagramm angezeigt.

Wichtig bei einer kontinuierlichen Überwachung einer so wichtigen Kern-Eigenschaft sind die historischen Werte. Diese helfen zu erkennen, ob eine Webseite zwar immer noch schnell ist, sie aber langsamer geworden ist. Dies kann zum Beispiel durch die Installation eines neuen Plugins geschehen oder einfach durch die gestiegene Last auf dem Server.

Aber nicht nur die historischen Werte haben eine Relevanz, sondern auch eine breite Sammlung der Werte. Wie am Anfang beschrieben, hängt die Performance der Webseite, vom einsetzten Framework, CMS, Blog oder Shopsystems ab. Aber nicht jede Seite in einem solchen System hat die gleiche Geschwindigkeit. Eine Kategorieseite, zum Beispiel, ist viel komplexer zu berechnen, als ene einfache Impressumsseite. Viel mehr Datenbankanfrage und Logik wird hier benötigt. Deswegen ist es wichtig - und so löst es koality.io auch - für jeden Seitentyp eines Online-Angebots immer eine Referenzseite mit in der Überwachung zu haben (Äquivalanzklassenprinzip).

Wenn dir dieser Artikel gefällt, dann melde dich am besten zu unserem Newsletter an. Danach wirst du keinen unserer Artikel zum Thema Monitoring und Agenturen.

Ja, ich will euren Newsletter abonnieren

Wie kann ich sie optimieren?

Die Optimierung der Serverladezeiten gehört zu einer der Standard-Aufgaben eines jeden Webentwicklers. Hier sind einige Ideen, was man spontan anfassen kann, um schnell das Ziel zu erreichen:

  • Schnellerer Server - Langsame Webserver können die Webseitenperformance negativ beeinflussen. Hier kann man für relativ wenig Geld schnellere

Systeme hochfahren.

  • Datenbank-Queries anschauen - Einen Großteil der Zeit, die eine Applikation braucht, wird in der Datenbank passieren. Hier lohnt es sich zum

Beispiel sich in das Slow Query Log von MySQL einzuarbeiten.

  • Langsame Plugins ausschalten - Häufig sind es Plugins, die zwar einen tollen Funktionsumfang haben, aber nicht performant programmiert sind,

die ganze Systeme verlangsamen. Hier sollte man überprüfen, ob es Alternativen gibt oder man ggf. auf sas Plugin auch verzichten kann.

  • Caching - Caching, also das Zwischenspeichern von Ergebnisse, um somit einen schnellen Zugriff zu gewährleisten, sollte immer aktiv sein.

Hier bringen die meisten Systeme wie Wordpress oder Shopware bereits nativ Implementierungen mit, es lohnt sich aber Plugins zu dem Thema von anderen Anbietern anzusehen. Häufig optimieren diese noch einmal die Geschwindigkeit.

  • System-Updates - Shopsysteme, CMS, Blogs - All diese entwickeln sich kontinuierlich weiter. Nicht nur im Funktionsumfang, sondern auch in

der Geschwindigkeit. Es ist also ratsam alle eingesetzte Systeme auf ihre aktuelle Version zu heben, um von den Neuerungen zu profitieren.

wir schon beschrieben, dass PHP die Programmiersprache ist, auf die viele der am häufigsten verwendeten CMS- und Shop-Systeme aufbauen. In den letzten Jahren hat sie die Sprache gerade im Geschwindigskeitsbereich sehr stark weiterentwicklt. Hier lohnt ein Update auf jedeen Fall.

Fazit

Die Serverladezeit ist eine der wichtigsten Eigenschaften einer Web-Applikation. Sie sollte kontinuierlich überwacht werden, über alle Seitentypen hinweg. Historische Werte helfen dabei veränderungen über längere Laufzeiten zu erkennen. Die Optimierung kann im beste Falle bereits über einfache Veränderungen vorgenommen werden.