Zwischen dem Client und dem „Origin-Server“ befindet sich ein Web-Cache, der eine Kopie aller sichtbaren Inhalte speichert. Wenn ein Client Inhalte anfordert, die im Cache gespeichert sind, kann der Inhalt direkt aus dem Cache abgerufen werden, ohne mit dem Server zu kommunizieren. (Empfohlenes Lernen: nginx use )
Da der Web-Cache „näher“ am Client liegt, kann er auf diese Weise die Antwortleistung verbessern und ihn effizienter und effizienter nutzen Wenden Sie Anwendungen effizienter an, da der Server die Seite nicht für jede Anfrage generieren muss. Zwischen dem Browser und dem Anwendungsserver gibt es mehrere „potenzielle“ Caches, wie zum Beispiel: Client-Browser-Cache, Zwischencache, Content Delivery Network (CDN) sowie Lastausgleich und Reverse-Proxy auf dem Server. Caching, gerade auf der Ebene des Reverse-Proxys und des Lastausgleichs, kann eine große Hilfe bei der Verbesserung der Leistung sein. Zum Beispiel habe ich letztes Jahr eine Aufgabe übernommen, die darin bestand, die Leistung einer langsam ladenden Website zu optimieren. Das erste, was mir auffiel, war, dass die Website fast über 1 Sekunde brauchte, um die Startseite zu erstellen. Nach einer Reihe von Debugging-Vorgängen stellte ich fest, dass der Grund für das langsame Laden darin lag, dass die Seite als nicht zwischenspeicherbar markiert war, d. h. die Seite wurde als Reaktion auf jede Anfrage dynamisch generiert. Da die Seite selbst keine häufigen Änderungen erfordert und keine Personalisierung erfordert, besteht hierfür eigentlich keine Notwendigkeit. Um meine Schlussfolgerung zu überprüfen, habe ich alle 5 Sekunden die Seite markiert, die zwischengespeichert werden soll. Allein durch diese Anpassung kann ich die Leistungsverbesserung deutlich spüren. Die Zeit bis zum ersten Byte verkürzt sich auf wenige Millisekunden und die Seite lädt deutlich schneller. Nicht nur große Content Delivery Networks (CDNs) können von der Verwendung von Caching profitieren – Caching kann auch die Leistung von Load Balancern, Reverse-Proxys und Front-End-Webdiensten von Anwendungsservern verbessern. Anhand des obigen Beispiels sehen wir, dass das Zwischenspeichern von Inhaltsergebnissen den Anwendungsserver effizienter nutzen kann, da nicht jedes Mal wiederholte Seitengenerierungsarbeiten durchgeführt werden müssen. Darüber hinaus kann Web-Caching auch zur Verbesserung der Website-Zuverlässigkeit eingesetzt werden. Wenn der Server ausfällt oder ausgelastet ist, ist es besser, NGINX so zu konfigurieren, dass es den zwischengespeicherten Inhalt an den Benutzer sendet, anstatt eine Fehlermeldung an den Benutzer zurückzugeben. Dies bedeutet, dass die Website bei einem Ausfall des Anwendungsservers oder der Datenbank einige oder sogar alle Funktionen aufrechterhalten kann.So installieren und konfigurieren Sie den Basiscache
Wir benötigen nur zwei Befehle, um den Basiscache zu aktivieren: Proxy_cache_path und Proxy_cache. Proxy_cache_path wird verwendet, um den Cache-Pfad und die Konfiguration festzulegen, und Proxy_cache wird verwendet, um das Caching zu aktivieren.proxy_cache_path/path/to/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m use_temp_path=off; server { ... location / { proxy_cachemy_cache; proxy_pass http://my_upstream; } }
Schließlich beginnt der Befehl „proxy_cache“ mit dem Zwischenspeichern von Inhalten, deren URL mit dem Standortteil übereinstimmt (in diesem Fall „/“). Sie können dem Serverabschnitt auch den Befehl „proxy_cache“ hinzufügen, der den Cache auf alle Dienste anwendet, deren Standorte keinen eigenen Befehl „proxy_cache“ angeben.
Das obige ist der detaillierte Inhalt vonNginx-Cache-Nutzung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!