Dieser Artikel ist ein Spiegelartikel der maschinellen Übersetzung, bitte klicken Sie hier, um zum Originalartikel zu springen.

Ansehen: 2246|Antwort: 0

[Web] Nginx' Webressourcen-Caching (CDN)

[Link kopieren]
Veröffentlicht am 17.07.2024 22:10:31 | | | |
Bevor wir über Web-Caching sprechen, sprechen wir über CDN, ein Content Delivery Network (CDN), ein verteiltes Netzwerk, das auf einem Trägernetzwerk aufgebaut und abgedeckt ist und aus Edge-Node-Server-Flotten weltweit besteht. CDN kann den Druck auf den Ursprungsserver teilen, Netzwerküberlastungen vermeiden, die Verbreitung von Website-Inhalten in verschiedenen Regionen und Szenarien sicherstellen und die Geschwindigkeit des Ressourcenzugriffs verbessern. CDN cacht Ursprungsserverressourcen an IDCs Beschleunigungsknoten weltweit, sodass Endnutzer, wenn sie Zugriff auf und Ursprungsserverressourcen anfordern, die zwischengespeicherten Ressourcen auf nahegelegenen CDN-Knoten erhalten können, die Ressourcenzugriffsgeschwindigkeit verbessern und den Druck auf die Ursprungsserver teilen.

Wie in der folgenden Abbildung dargestellt:



Einfach ausgedrückt: Wenn Benutzer auf einige statische Ressourcen zugreifen, erhalten sie diese nach Verwendung des CDN nicht vom Ursprungsserver, sondern finden den CDN-Dienst, der dem aktuellen Benutzer am nächsten ist, durch Berechnung und Rückgabedaten.

Web-Caching-Werte sind ein Dienst zwischen dem Benutzer und dem Ursprungsserver, und Nginx bietet Web-Caching-Funktionen nativ. Weitere sind Varnish, Squid und Cachewall, die Web-Caching-Proxys sind (einige bieten nicht nur Web-Caching an).

Über die Nginx-Cache-Konfigurationsdokumentation:Der Hyperlink-Login ist sichtbar.

Erstens, wenn wir erstmals über einen Caching-Service auf eine Ressource zugreifen, lautet der Cache-ZustandFRÄULEIN, wird den Ursprungsserver anfordern, es abzurufen, wie in der untenstehenden Abbildung gezeigt:



Wenn wir die Ressource zum zweiten Mal aufrufen, stellen wir fest, dass die Ressource zwischengespeichert wurde und der Zustand lautetSCHLAGEN, wie in der untenstehenden Abbildung dargestellt:



Die wichtigsten Konfigurationsparameter von Nginx sind wie folgt:

Hauptparameter:

proxy_cache_path/data/nginx/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=180d use_temp_path=off;

●pfad: Ein verpflichtender Parameter, der den Speicherpfad zwischengespeicherter Dateien angibt.
●levels: Definiert die Hierarchie des Cache-Verzeichnisses. Jede Ebene kann durch 1 (bis zu 16 Auswahlmöglichkeiten, 0-f) oder 2 (bis zu 256 Auswahlmöglichkeiten, 00-ff) dargestellt werden, getrennt durch : in der Mitte.
proxy_cache_path /data/nginx/cache;  Das bedeutet, dass alle Caches nur ein Verzeichnis haben, wie /data/nginx/cache/d7b6e5978e3f042f52e875005925e51b
proxy_cache_path /data/nginx/cache levels=1:2;  Das bedeutet, dass der Cache ein Verzeichnis der zweiten Stufe ist (mit 16*256=4096 Verzeichnissen), wie /data/nginx/cache/b/51/d7b6e5978e3f042f52e875005925e51b
● keys_zone: Pflichtparameter, definiere den Namen und die Größe des gemeinsamen Speicherbereichs, der zur Speicherung der Metadaten des Cache-Objekts verwendet wird (alle aktiven Schlüssel und zwischengespeicherten datenbezogenen Informationen), sodass nginx schnell feststellen kann, ob eine Anfrage den Cache trifft oder verfehlt, 1m 8000 Schlüssel speichern kann, 10 Millionen 8000 Schlüssel speichern können, 10 Millionen 80.000 Schlüssel speichern können, 10 Millionen 80.000 Schlüssel speichern können.
●inaktiv: Löscht Cache-Dateien, die innerhalb der angegebenen Zeit nicht abgerufen wurden, standardmäßig für 10 Minuten.
●max_size: Die obere Grenze des Cache-Speichers wird gesetzt, und wenn nicht angegeben, ist höchstens der gesamte Speicherplatz verbraucht.
● use_temp_path: Platziere temporäre Dateien direkt im Cache-Verzeichnis.


proxy_cachemy_cache;      #指定用于页面缓存的共享内存 wird der Zonenname durch proxy_cache_path Direktive definiert
proxy_cache_min_uses1;   ## legt den Caching-Schwellenwert fest, wie oft die Anfrage zwischengespeichert wird, und cacht keine niedrigfrequenten Anfragen, um Verschwendung zu vermeiden.
proxy_cache_valid200 3m;  #为不同的响应状态码设置不同的缓存时间 handelt es sich um eine Anfrage mit einem Cache-Statuscode von 200 und einer Cache-Dauer von 3 Minuten
proxy_cache_key$request_uri; #指定缓存文件的key为请求的URI
add_headerNginx-Cache-Status $upstream_cache_status;  #把缓存状态设置为头部信息, antworte dem Kunden
proxy_passhttp://webservers;  #设置代理转发的后端服务器的协议和地址

Verwenden Sie einen Nginx-Caching-Proxy, um Abfrage-Strings zu ignorieren

(Ende)




Vorhergehend:Verwenden Sie das dotnet-ef-Tool, um ein Rollback-Skript zu generieren
Nächster:Verwenden Sie Curl, um die HTTP/3-Unterstützung der Testseite zu überprüfen
Verzichtserklärung:
Alle von Code Farmer Network veröffentlichten Software, Programmiermaterialien oder Artikel dienen ausschließlich Lern- und Forschungszwecken; Die oben genannten Inhalte dürfen nicht für kommerzielle oder illegale Zwecke verwendet werden, andernfalls tragen die Nutzer alle Konsequenzen. Die Informationen auf dieser Seite stammen aus dem Internet, und Urheberrechtsstreitigkeiten haben nichts mit dieser Seite zu tun. Sie müssen die oben genannten Inhalte innerhalb von 24 Stunden nach dem Download vollständig von Ihrem Computer löschen. Wenn Ihnen das Programm gefällt, unterstützen Sie bitte echte Software, kaufen Sie die Registrierung und erhalten Sie bessere echte Dienstleistungen. Falls es eine Verletzung gibt, kontaktieren Sie uns bitte per E-Mail.

Mail To:help@itsvse.com