DIY: Beschleunigen Sie Ihren Apache-Server mit Varnish Cache

Alle begrüßen den Apache-Server - der König der Webserver ist zuverlässig, sicher und schnell. Aber selbst wenn Apache sofort einsatzbereit ist, erfordern einige Situationen möglicherweise eine noch schnellere Erfahrung. Ein Tool zur Beschleunigung von Apache ist Varnish Cache. Der Open Source-Webanwendungsbeschleuniger (auch als Caching-HTTP-Reverse-Proxy bezeichnet) kann Ihren Webserver je nach Architektur um den Faktor 10 bis 300 beschleunigen und eine Reihe von Tricks ausführen.

Ich werde zeigen, wie der Lack-Cache installiert und konfiguriert wird, um so viel Zoom wie möglich herauszuholen. Ich gehe davon aus, dass der Webserver bereits ausgeführt und konfiguriert wird, um Seiten oder Anwendungen bereitzustellen. Für diese Demonstration arbeite ich an einem Ubuntu 11.04-Server.

Lackcache installieren

Es gibt verschiedene Wege zur Installation: von der Quelle oder von der vorkompilierten Binärdatei. Stellen Sie auf der Download-Seite für den Lack-Cache sicher, dass Sie zur neuesten stabilen Version wechseln, und durchsuchen Sie dann die Liste nach vorkompilierten Binärdateien. Du wirst finden:

  • Debian
  • FreeBSD
  • Red Hat Enterprise Linux 5
  • Ubuntu

Wenn Sie auf die Liste für Ihre Distribution klicken, werden Sie zu einer Seite weitergeleitet, auf der beschrieben wird, wie Sie das richtige Repository hinzufügen. Bevor Sie dies tun, überprüfen Sie möglicherweise Ihr Tool zum Hinzufügen und Entfernen von Software, um festzustellen, ob der Lack-Cache bereits enthalten ist (dies war für Ubuntu 11.04). Öffnen Sie das Tool Software hinzufügen und suchen Sie nach "Lack" (keine Anführungszeichen). Wenn der Lack-Cache aufgeführt ist, markieren Sie ihn für die Installation und klicken Sie auf Übernehmen.

Wenn Sie lieber von der Quelle installieren möchten, müssen Sie sicherstellen, dass Sie die folgenden Abhängigkeiten erfüllen:

  • automake
  • autoconf
  • libtool
  • ncurses-devel
  • libxslt
  • groff
  • pcre-devel
  • pkgconfig

Hier sind die Schritte zur Installation:

  1. Laden Sie die Quelle von der Download-Seite herunter.
  2. Entpacken Sie die Datei .tar.gz:
  3. Wechseln Sie in das neu erstellte Verzeichnis.
  4. Setzen Sie den Befehl sh autogen.sh ab
  5. Geben Sie den Befehl ./configure ein .
  6. Wenn Sie Root-Rechte verwenden (entweder als Root-Benutzer oder mit sudo), geben Sie den Befehl make aus .
  7. Wenn Sie Root-Rechte verwenden (entweder als Root-Benutzer oder mit sudo), geben Sie den Befehl make check aus .
  8. Wenn Sie Root-Rechte verwenden (entweder als Root-Benutzer oder mit sudo), geben Sie den Befehl make install aus .

Wenn Sie von der Quelle installieren, werden höchstwahrscheinlich Konfigurationsdateien in / usr / local / varnish installiert. Wenn Sie von einer vorkompilierten Binärdatei installieren, werden Sie feststellen, dass / etc / varnish Ihre Konfigurationsdateien enthält.

Lack-Cache konfigurieren

Sie müssen Varnish Cache über den Inhalt des Servers informieren. Wie bei allen anderen Konfigurationen wird dies in /etc/varnish/default.vcl erledigt (vorausgesetzt, Sie haben von einer vorkompilierten Binärdatei installiert). Oben in der Datei sehen Sie einen Abschnitt, der folgendermaßen aussieht:

 Backend Standard { 

.host = "127.0.0.1";

.port = "8080";

Der obige Abschnitt ist ziemlich selbsterklärend. Sie sollten die Hostadresse und den für Ihren Webserver verwendeten Port ändern. Sie können mehr als ein Backend definieren oder sogar Backends zum Lastausgleich zusammenfügen. Nehmen Sie Ihre Änderungen vor und speichern Sie die Datei.

Stellen Sie nun Ihren Webserver-Port so ein, dass er mit dem von Varnish Cache übereinstimmt. Wenn Sie beispielsweise .port = auf 8080 gesetzt haben, sollten Sie sicherstellen, dass Apache auch Port 8080 überwacht. Keine Sorge - dies stellt nur sicher, dass HTTP-Anforderungen jetzt über den Lack-Cache und nicht direkt an Apache gesendet werden. Starten Sie den Dienst neu, nachdem Sie diese Änderung an Apache vorgenommen haben.

Lack-Cache starten

Der Varnish-Daemon ist varnishd und kann mit dem folgenden Befehl gestartet werden:

 sudo varnishd -f /etc/varnish/default.vcl -s malloc, 1G -T 127.0.0.1:2000 
  • Der Schalter -f weist Varnish Cache an, welche Konfigurationsdatei beim Starten verwendet werden soll.
  • Der Schalter -s informiert den Varnish Cache darüber, welcher Typ und wie viel Speicher verwendet werden soll.
  • Der Schalter -T teilt Varnish Cache mit, dass Sie auf die textbasierte Verwaltungsoberfläche zugreifen möchten.

Überprüfen der Protokolle

Geben Sie den Befehl varnishlog aus, um sicherzustellen, dass Varnish Cache das tut, was es sollte. Sie sollten die Ausgabe wie folgt sehen:

 0 CLI - Wr 200 19 PONG 1317310135 1.0 

0 CLI - Rd Ping

0 CLI - Wr 200 19 PONG 1317310138 1.0

0 CLI - Rd Ping

0 CLI - Wr 200 19 PONG 1317310141 1.0

0 CLI - Rd Ping

0 CLI - Wr 200 19 PONG 1317310144 1.0
 0 CLI - Rd Ping 0 CLI - Wr 200 19 PONG 1317310147 1.0 

Nachdem Sie nun wissen, dass der Varnish Cache ausgeführt wird, öffnen Sie Ihre Website (die als Varnish Cache-Backend-Server konfigurierte), und die folgende Ausgabe sollte im Protokoll angezeigt werden:

 11 SessionOpen c 127.0.0.1 58912 0.0.0.0:80 

11 ReqStart c 127.0.0.1 58912 595005213

11 RxRequest c GET

11 RxURL c /

11 RxProtocol c HTTP / 1.1

11 RxHeader c Host: localhost: 80

11 RxHeader c Verbindung: Keep-Alive
 Lack-Cache funktioniert. Herzliche Glückwünsche. 

Kekse

Da nicht jede Website gleichermaßen erstellt wird, müssen Sie sich mit bestimmten Problemen befassen. Beispielsweise speichert Varnish Cache kein Objekt mit einem Set-Cookie-Header oder wenn der Client einen Cookie-Header sendet. In diesem Fall umgeht der Lack-Cache den Cache. Aus diesem Grund ist der Lack-Cache so eingerichtet, dass Cookies umgangen werden.

Lack-Cache-Tools

Zwei im Varnish Cache enthaltene Tools, die Sie möglicherweise unglaublich nützlich finden, sind:

  • varnishadmin: Um sich bei der textbasierten Administrationskonsole anzumelden, geben Sie den folgenden Befehl ein (nach dem Startbefehl von früher): varnishadmin -T 127.0.0.1:2000 . Von hier aus können Sie den Hilfebefehl ausgeben, um alle möglichen Befehle aufzulisten, die in der Administrationskonsole verwendet werden können.
  • varnishtop: Dieses Tool listet alle URLs auf, die auf den Backend-Server treffen ( Abbildung A ). Geben Sie den Befehl varnishtop aus, um dieses Tool zu starten.
Abbildung A.

Dieses Tool gibt Ihnen viele Informationen darüber, was mit Ihrem mit Lack erweiterten Server verbunden ist.

Für mehr Informationen

Varnish Cache bietet viel mehr als das, was ich erklärt habe, aber ich hoffe, dieser Beitrag dient als hilfreiche Einführung. Ich empfehle Ihnen, die Dokumentation zum Lack-Cache zu lesen und sich über Themen zu informieren, die Ihren Anforderungen am besten entsprechen. Einige der in der Dokumentation behandelten Themen sind: Dimensionierung Ihres Caches, Erreichen einer hohen Trefferquote, User-Agent, Löschen und Sperren, Edge-Side-Includes, Directors und Health-Checks.

© Copyright 2020 | mobilegn.com