Was ist der Varnish Cache und was sind die Vorteile?
Modernen Webseiten werden von einem Server dynamisch erzeugt, indem dieser aus Skripten in einer Programmiersprache wie PHP, Perl oder Python Informationen abruft und daraus ein gültiges HTML-Dokument erstellt. Der Vorteil dieses Ansatzes liegt in der hohen Flexibilität und die Möglichkeit, Internetauftritte optisch und inhaltlich auf Personen oder Gruppen abzustimmen. Mit einer hohen Besucherzahl und Komplexität sinkt allerdings die Performance, was zu einem verlangsamten Seitenaufbau führt. Eine Lösung für dieses Problem ist der Varnish Cache, der sich mit unterschiedlichen Webservern wie Apache 2 oder NGINX einsetzen lässt.
Wie funktioniert der Varnish Cache?
Bei dem Varnish Cache handelt es sich um einen sogenannten Reverse Proxy, der vor einen Server geschaltet wird, auf dem sich Webseiten und ähnliche Inhalte befinden. Bei dem ersten Aufruf bearbeiten Apache 2 oder NGINX die Anfrage wie gewöhnlich und liefern diese aus. Gleichzeitig speichert der Varnish Cache eine vollständige Kopie oder Teile der dynamisch erzeugten Webseite im Arbeitsspeicher. Bei einer weiteren Anfrage ruft er diese direkt aus diesem ab und umgeht auf diese Weise den Webserver. Da keine erneute Berechnung erfolgt, reduzieren sich die Arbeitslast und die Reaktionszeit erheblich.
Was ist Edge Side Includes?
Die Anwendungssprache ESI ermöglicht es, dynamische Webseiten in einzelne Komponenten zu zerlegen und diesen eine individuelle Speicherfrist zuzuordnen. Auf diese Weise können bei unterschiedlichen Anfragen die einzelnen Bausteine zusammengesetzt werden, um eine aufwendige Berechnung zu vermeiden. In einem HTML-Dokument markieren sogenannte Element Tags die entsprechenden Abschnitte, die während der ersten Erstellung automatisch eingefügt werden. Der Varnish Cache nutzt ESI, um komplexe Webseiten in Einzelteile zu zerlegen und diese zu koordinieren. Er dient anschließend als vorgeschalteter Zwischenspeicher, in dem relevante Daten abgelegt werden.
Welche weiteren Funktionen übernimmt der Varnish Cache?
Praktisch erhöht der Varnish Cache nicht allein die Geschwindigkeit bei einem Seitenaufruf, sondern fungiert zusätzlich als Load-Balancer bei einer hohen Zahl von parallelen Zugriffen. Er verwendet das Round Robin Verfahren, bei dem Aufgaben in Warteschlangen abgelegt und anschließend innerhalb begrenzter Zeitfristen bearbeitet werden. Eingehende Anfragen und bestehende Verbindungen lassen sich durch den Varnish Cache limitieren, um eine Abstimmung auf die Performance des Servers zu erreichen.
Jetzt den perfekten Linux Root Server sichern
Zum Linux Root Server Vergleich
Was sind die Vor- und Nachteile von Varnish Cache?
Die meisten großen Unternehmen verwenden den Varnish Cache, um ihre Internetpräsenz zu optimieren und niedrige Latenzzeiten zu erreichen. Zu diesen zählen zum Beispiel Facebook, Twitter, eBay oder Wikipedia, da der Varnish Cache speziell bei Webseiten mit hohem Traffic und Besucheraufkommen konkrete Vorteile erbringt:
- Hohe Geschwindigkeit beim Laden von Seiten
- Integration von ESI für Optimierung dynamischer Webseiten
- Effiziente Nutzung der Ressourcen durch niedrigere Rechenlast
- Load-Balancer nach dem Round Robin oder Rundlauf-Verfahren
- Flexible Konfiguration durch die Varnish Configuration Language (VCL)
- Auslagerung von Inhalten in den Arbeitsspeicher und auf temporäre Dateien
- Kompatibel mit unterschiedlichen Webservern wie Apache 2 und NGINX
Dem stehen allerdings einige gravierende Nachteile gegenüber, die vor einem Einsatz zu berücksichtigen sind:
- Viele Vorteile lediglich in Verbindung mit ESI nutzbar
- Aufwendige Einrichtung und Konfiguration
- Keine Unterstützung für Microsoft Windows
- Verwendung von HTTPS mit TLS oder SSL erfordert zusätzlichen Proxy-Server
- Höhere Anfälligkeit für Fehler
- Geringer Nutzen bei niedriger Auslastung
Der Varnish Cache lässt sich auf Linux vServern und Linux Root Servern installieren, wenn der Nutzer administrative Rechte besitzt, setzt wegen ihrer hohen Komplexität jedoch ein umfangreiches Fachwissen voraus. Wegen der vergleichsweise geringen Vorteile bei niedriger Auslastung bietet sie sich primär für mittlere bis große Unternehmen an. Sollte es nicht fester Bestandteil eines Webhostings sein, empfehlen sich für kleine Betriebe zunächst einfache und kostengünstigere Maßnahmen wie einer Optimierung der Konfiguration von Apache 2 oder NGINX.
Jetzt den perfekten Linux Root Server sichern
Zum Linux Root Server Vergleich
Foto: John Howard Pixabay
Schreibe einen Kommentar
- Performance
Tags zu diesem Artikel
Weitere Webhoster
Weitere interessante Artikel
Was sind Load Balancer und wie arbeiten sie?
Load Balancer helfen dir eine enorme Last an Anfragen zu verteilen. Wir zeigen dir wie das in der Praxis geht.
Was ist HTTP/2 und bringt es mehr Geschwindigkeit?
Dank des neuen HTTP/2 Verbindungsprotokolls können Webseiten zukünftig schneller geladen werden. Die meisten Internetbro...
Webseite nicht zu erreichen - Ursachen und Maßnahmen
Wer für längere Zeit eine eigene Webseite betreibt, der wird früher oder später mit einer Downtime konfrontiert werden. ...
Lazy Loading - Was steckt dahinter?
Die Ladezeiten einer Webseite sollten so gering wie möglich sein. Wie genau kann Lazy Loading dabei helfen?
Servergeschwindigkeit - worauf kommt es an und wie lässt sie sich messen?
Warum ist die Geschwindigkeit eines Servers so wichtig, wie lässt sich die Servergeschwindigkeit messen und wie kann man...
Ladezeit beim Webhosting - Informationen, Tools und Tipps
Immer häufiger sind Ladezeiten ein heiß diskutiertes Thema, wenn es um Webhosting und Internetseiten geht. Warum die Lad...
Im Jahr 2006 riefen wir hosttest ins Leben, um den Webhosting Markt im DACH-Raum transparenter zu machen. Mit derzeit über 400 Webhostern und über 10.000 Angeboten bieten wir dir die beste Grundlage, den für dich passenden Anbieter für Hosting-Leistungen zu finden.
Seit 2015 küren wir zudem alljährlich unsere Webhoster des Jahres und würden uns in Zukunft auch über deine Stimme freuen.
Mehr über uns...