Denne artikkelen er en speilartikkel om maskinoversettelse, vennligst klikk her for å hoppe til originalartikkelen.

Utsikt: 2246|Svare: 0

[Web] Nginx sin nettressurs-caching (CDN)

[Kopier lenke]
Publisert på 17.07.2024 22:10:31 | | | |
Før vi snakker om web-caching, la oss snakke om CDN, et innholdsleveringsnettverk (CDN) er et distribuert nettverk bygget og dekket oppå et bærernettverk, bestående av edge-node-serverflåter over hele verden. CDN kan dele presset på opprinnelsesserveren, unngå nettverksbelastning, sikre distribusjon av nettsideinnhold i ulike regioner og scenarier, og forbedre hastigheten på ressurstilgang. CDN cacher opprinnelsesserverressurser til IDCs akselerasjonsnoder rundt om i verden, slik at når sluttbrukere ber om tilgang til og får opprinnelsesserverressurser, kan de få tak i de bufrede ressursene på nærliggende CDN-noder, forbedre ressurstilgangshastigheten og dele presset på opprinnelsesserverne.

Som vist i følgende figur:



Enkelt sagt, når brukere får tilgang til noen statiske ressurser, vil de ikke hente dem fra opprinnelsesserveren etter bruk av CDN, men vil finne den CDN-tjenesten som er nærmest nåværende bruker gjennom beregning og returdata.

Webcaching-verdier er en tjeneste mellom brukeren og opprinnelsesserveren, og Nginx tilbyr webcaching-muligheter nativt. Andre inkluderer Varnish, Squid og Cachewall, som er webcaching-proxyer (noen av dem tilbyr ikke bare webcaching).

Om dokumentasjonen for Nginx cache-konfigurasjon:Innloggingen med hyperkoblingen er synlig.

For det første, når vi først får tilgang til en ressurs gjennom en caching-tjeneste, er cache-tilstandenFRØKEN, vil be opprinnelsesserveren om å hente den, som vist i figuren nedenfor:



Når vi får tilgang til ressursen for andre gang, vil vi finne at ressursen er cachet og tilstanden erSLÅ, som vist i figuren nedenfor:



Hovedkonfigurasjonsparametrene til Nginx er som følger:

Hovedparametere:

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

●path: En obligatorisk parameter som spesifiserer lagringsstien for bufrede filer.
●levels: Definerer hierarkiet til cache-katalogen. Hvert lag kan representeres med 1 (opptil 16 valg, 0-f) eller 2 (opptil 256 valg, 00-ff), adskilt av : i midten.
proxy_cache_path /data/nginx/cache;  Dette betyr at alle cacher kun har én katalog, som /data/nginx/cache/d7b6e5978e3f042f52e875005925e51b
proxy_cache_path /data/nginx/cache-nivåer=1:2;  Det betyr at cachen er en katalog på andre nivå (med 16*256=4096 kataloger), som /data/nginx/cache/b/51/d7b6e5978e3f042f52e875005925e51b
● keys_zone: Obligatorisk parameter, definer navnet og størrelsen på det delte minneområdet, som brukes til å lagre metadata for cache-elementet (alle aktive nøkler og bufret datarelatert informasjon), slik at nginx raskt kan avgjøre om en forespørsel treffer eller bommer i cachen, 1m kan lagre 8000 nøkler, 10m kan lagre 80000 nøkler, 10m kan lagre 80000 nøkler, 10m kan lagre 80000 nøkler.
●inaktiv: Sletter cachefiler som ikke har blitt aksessert innen angist tid, standard i 10 minutter.
●max_size: Den øvre grensen for cachelagring settes, og hvis ikke spesifisert, vil all diskplass være brukt opp på det meste.
● use_temp_path: Plasser midlertidige filer direkte i cache-katalogen.


proxy_cachemy_cache;      #指定用于页面缓存的共享内存 er sonenavnet definert av proxy_cache_path direktiv
proxy_cache_min_uses1;   ## fastsetter caching-terskelen, hvor mange ganger forespørselen skal caches, og cacher ikke lavfrekvente forespørsler for å unngå sløsing.
proxy_cache_valid200 3m;  #为不同的响应状态码设置不同的缓存时间 er dette en forespørsel med cache-statuskode på 200 og en cache-varighet på 3 minutter
proxy_cache_key$request_uri; #指定缓存文件的key为请求的URI
add_headerNginx-Cache-Status $upstream_cache_status;  #把缓存状态设置为头部信息, svar klienten
proxy_passhttp://webservers;  #设置代理转发的后端服务器的协议和地址

Bruk en Nginx caching-proxy for å ignorere spørringsstrenger

(Slutt)




Foregående:Bruk dotnet-ef-verktøyet for å generere et rollback-skript
Neste:Bruk curl for å sjekke HTTP/3-støtten til testsiden
Ansvarsfraskrivelse:
All programvare, programmeringsmateriell eller artikler publisert av Code Farmer Network er kun for lærings- og forskningsformål; Innholdet ovenfor skal ikke brukes til kommersielle eller ulovlige formål, ellers skal brukerne bære alle konsekvenser. Informasjonen på dette nettstedet kommer fra Internett, og opphavsrettstvister har ingenting med dette nettstedet å gjøre. Du må fullstendig slette innholdet ovenfor fra datamaskinen din innen 24 timer etter nedlasting. Hvis du liker programmet, vennligst støtt ekte programvare, kjøp registrering, og få bedre ekte tjenester. Hvis det foreligger noen krenkelse, vennligst kontakt oss på e-post.

Mail To:help@itsvse.com