Contacteu-nos

info@serverion.com

NGINX Config Rewind: Serverion reviu l'art perdut de l'ajustament de la memòria cau del servidor intermediari

NGINX Config Rewind: Serverion reviu l'art perdut de l'ajustament de la memòria cau del servidor intermediari

Voleu llocs web més ràpids i càrregues de servidor més baixes? La memòria cau del servidor intermediari NGINX és la vostra solució. En emmagatzemar el contingut sol·licitat amb freqüència, accelera el lliurament i redueix la tensió als servidors d'origen. Servidor comparteix consells pràctics per optimitzar la configuració de la memòria cau per obtenir un millor rendiment i fiabilitat.

Punts clau per emportar:

  • Doneu contingut obsolet: Utilitzeu les respostes emmagatzemades a la memòria cau durant el temps d'inactivitat del servidor amb proxy_cache_use_stale.
  • Actualitzacions de fons: Actualitzeu les entrades de la memòria cau sense interrompre l'ús dels usuaris proxy_cache_background_update.
  • Evitar sobrecàrregues: Eviteu aclaparar el vostre servidor d'origen amb bloqueig_proxy_cache_lock.

Exemple de configuració:

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m use_temp_path=off; proxy_cache my_cache; proxy_cache_use_stale actualitzant; proxy_cache_background_update activat; proxy_cache_lock activat; 

Aquesta configuració garanteix respostes ràpides, ús eficient dels recursos i lliurament de contingut fiable. Tant si estàs executant a petit VPS o un servidor d'alt trànsit, aquestes tècniques us poden ajudar a treure el màxim profit de la memòria cau del servidor intermediari NGINX.

NGINX: memòria cau de contingut amb servidor intermediari invers (súper ràpid...

NGINX

Fonaments de la memòria cau del servidor intermediari NGINX

Les tècniques d'ajustament de la memòria cau de Serverion es basen en els principis bàsics de la memòria cau del servidor intermediari NGINX, que implica emmagatzemar i publicar còpies del contingut d'origen. El sistema utilitza tres components principals: la ruta de la memòria cau, una zona de memòria compartida i un gestor de memòria cau que elimina els fitxers caducats o utilitzats menys recentment (LRU) quan la memòria cau arriba al seu límit.

Operació de memòria cau del servidor intermediari NGINX

Quan NGINX processa una sol·licitud, primer comprova la seva zona de memòria compartida per veure si el contingut sol·licitat ja està a la memòria cau. Aquesta cerca a la memòria permet determinar ràpidament les visites o errors de la memòria cau. Com a referència, una zona de claus d'1 MB pot emmagatzemar aproximadament 8.000 claus de memòria cau[1].

A continuació es mostra com funciona el procés de memòria cau:

  • NGINX fa hash la sol·licitud per crear una clau de memòria cau única.
  • Comprova la zona de memòria compartida per a aquesta clau.
  • Si es troba la clau (accedir a la memòria cau), el contingut es publica directament des de la memòria cau.
  • Si no es troba la clau (falta de memòria cau), el contingut s'obté del servidor d'origen i s'emmagatzema a la memòria cau per a un ús futur.

Serverion optimitza el rendiment assegurant cerques de claus eficients i organitzant l'emmagatzematge de la memòria cau mitjançant jerarquies de directoris.

Elements de la memòria cau bàsica

Directiva Propòsit Impacte
proxy_cache_path Especifica la ubicació d'emmagatzematge de la memòria cau Determina on i com s'emmagatzema el contingut a la memòria cau
proxy_cache Activa la memòria cau per a sol·licituds específiques Habilita la memòria cau dins d'un bloc d'ubicació
zona_claus Assigna memòria compartida per a les claus de memòria cau Permet cerques ràpides a la memòria
inactiu Defineix quant de temps romanen a la memòria cau els elements no utilitzats Controla la frescor de la memòria cau i el temps de desallotjament

Per maximitzar el rendiment, utilitzeu un dos nivells nivells jerarquia per evitar alentiments del sistema de fitxers. A més, establir use_temp_path=desactivat per escriure fitxers en memòria cau directament a la seva ubicació final, reduint la sobrecàrrega d'E/S.

NGINX respecta les directives de memòria cau del servidor d'origen. Només emmagatzema les respostes que inclouen un Caduca capçalera amb una data futura o a Control de memòria cau capçalera amb a edat màxima valor superior a zero.

Ara podeu aplicar aquests principis a la configuració de la memòria cau del servidor intermediari NGINX.

[1] Documentació NGINX: una zona de claus d'1 MB emmagatzema dades d'unes 8.000 claus.

Guia de configuració de la memòria cau del servidor intermediari NGINX

Apreneu a configurar i optimitzar la memòria cau del servidor intermediari NGINX pas a pas.

Configuració dels paràmetres de la memòria cau

La base de la configuració de la memòria cau del servidor intermediari NGINX és proxy_cache_path directiva. Aquí teniu un exemple de configuració:

proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=60m use_temp_path=off; 

Aquesta configuració crea una estructura de directoris de dos nivells, assigna 10 MB per a zona_claus (prou per aproximadament 80.000 claus), estableix una mida màxima de memòria cau de 10 GB i defineix un temps d'espera inactiu de 60 minuts.

També podeu incloure aquestes directives opcionals per a un millor control:

Directiva Propòsit
proxy_cache_use_stale Ofereix contingut obsolet si els servidors d'origen no estan disponibles
proxy_cache_revalidate Utilitza sol·licituds GET condicionals per comprovar si el contingut encara és vàlid
proxy_cache_background_update Actualitza el contingut obsolet en segon pla
bloqueig_proxy_cache_lock Evita que múltiples sol·licituds aclaparan el servidor d'origen

Després de definir aquests paràmetres, assigneu memòria i espai de disc en funció del trànsit previst.

Gestió de la mida de la memòria cau

Per dimensionar de manera efectiva la memòria cau, tingueu en compte l'ús de la memòria i del disc. Així és com:

  • Dimensió de la zona de memòria Assignar memòria per a zona_claus per satisfer les vostres necessitats de memòria cau:
    zona_claus=caché_empresa: 100 m; # Admet aproximadament 800.000 claus de memòria cau 
  • Assignació d'espai en disc Ajusteu el proxy_cache_path per especificar l'espai màxim de disc:
    proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=enterprise_cache:100m max_size=10g inactive=24h use_temp_path=off; 

Un cop establerts aquests paràmetres, ja esteu preparat per inicialitzar i habilitar la vostra memòria cau.

Inicialització de la memòria cau

Després d'ajustar els paràmetres i la mida, seguiu aquests passos per activar la memòria cau:

  1. Utilitzar el proxy_cache_path directiva de l'exemple anterior i afegiu proxy_cache my_cache a la teva configuració.
  2. Habiliteu l'emmagatzematge a la memòria cau dins del lloc corresponent servidor o ubicació bloc:
    proxy_cache my_cache; 
  3. Opcionalment, inclou qualsevol de les directives d'ajustament esmentades anteriorment per millorar el rendiment.
  4. Superviseu l'estat de la memòria cau afegint una capçalera personalitzada:
    add_header X-Cache-Status $upstream_cache_status; 

Nota: Segons la documentació de NGINX, un 1 MB zona_claus pot emmagatzemar aproximadament 8.000 claus.

Aquesta configuració garanteix que la vostra memòria cau estigui preparada per gestionar el trànsit de manera eficient, mantenint la flexibilitat dels ajustos.

Gestió empresarial de la memòria cau NGINX

Un cop establerts el camí de la memòria cau i els paràmetres, és hora d'escalar la configuració per gestionar el trànsit a nivell empresarial de manera eficaç.

Optimització de la taxa d'èxits de la memòria cau

Per millorar l'eficiència de la memòria cau, activeu funcions com les sol·licituds condicionals i les actualitzacions en segon pla:

proxy_cache_revalidate activat; proxy_cache_background_update activat; proxy_cache_use_stale s'està actualitzant; 

Eviteu aclaparar el vostre servidor d'origen configurant aquests paràmetres:

proxy_cache_lock activat; proxy_cache_lock_timeout 5s; proxy_cache_min_uses 2; 

Per a entorns de gran trànsit, distribuïu la càrrega de la memòria cau entre diversos dispositius d'emmagatzematge per millorar el rendiment:

split_clients "${request_uri}" $disk { 20% "/data/cache1"; 20% "/data/cache2"; 20% "/data/cache3"; 20% "/data/cache4"; * "/data/cache5"; } 

Una vegada que la memòria cau estigui optimitzada per al rendiment, centreu-vos a protegir-la per gestionar contingut sensible.

Controls de seguretat de la memòria cau

Per protegir les sol·licituds sensibles, ometeu la memòria cau i personalitzeu les claus de la memòria cau segons sigui necessari:

proxy_cache_bypass $http_pragma; proxy_cache_bypass $cookie_nocache; proxy_ignore_headers Control de memòria cau; 

Per a contingut personalitzat o sol·licituds basades en galetes, ajusteu la clau de memòria cau i els mètodes admesos:

proxy_cache_key "$host$request_uri$cookie_user"; proxy_cache_methods OBTÉN EL CAPÇAL DE LA PUBLICACIÓ; 

Després d'assegurar la vostra memòria cau, assegureu-vos de supervisar contínuament el seu rendiment.

Seguiment del rendiment de la memòria cau

Superviseu el comportament de la memòria cau mitjançant definicions d'estat per ajustar la vostra configuració:

Estat Definició
ACTUALITZACIÓ El contingut obsolet es publica mentre hi ha una actualització en curs
REVALIDAT El contingut de la memòria cau es va revalidar amb el servidor d'origen

Analitza el X-Cache-Estat mètriques regularment i ajustar les directives per alinear-se amb els patrons de trànsit per obtenir resultats òptims.

ServidorConfiguració de la memòria cau NGINX de

Servidor

Serverion personalitza la configuració de la memòria cau NGINX en funció de les necessitats específiques de cada càrrega de treball. Mitjançant l'ús de directrius bàsiques, optimitzen les configuracions de memòria cau de manera diferent per a VPS i servidors dedicats.

Rutes de la memòria cau per càrrega de treball

Càrregues de treball VPS

Per a les configuracions de VPS, aquesta configuració aconsegueix un equilibri entre l'eficiència de la memòria i els temps de resposta ràpids:

proxy_cache_path /data/nginx/cache levels=1:2 keys_zone=SERVERCACHE:10m max_size=10g inactiu=60m use_temp_path=off; proxy_cache_key "$scheme$request_method$host$request_uri"; proxy_cache_valid 200 302 60m; proxy_cache_valid 404 1m; 

El zona_claus La mida està configurada per acomodar aproximadament 80.000 claus.

Servidors dedicats

Per a aplicacions d'alt trànsit en servidors dedicats, Serverion utilitza un sistema de memòria cau distribuït en diversos SSD:

proxy_cache_path /cache1 levels=1:2 keys_zone=cache1:10m; proxy_cache_path /cache2 levels=1:2 keys_zone=cache2:10m; proxy_cache_path /cache3 levels=1:2 keys_zone=cache3:10m; split_clients "${request_uri}" $cachezone { 33% "cache1"; 33% "cache2"; * "cache3"; } 

Aquesta configuració distribueix les escriptures de la memòria cau uniformement en tres SSD mitjançant el split_clients directiva.

Els valors específics d'aquestes configuracions es deriven de la taula de referència de paràmetres de memòria cau de Serverion.

Configuració d'infraestructura

Per millorar encara més el rendiment, la configuració del treballador de NGINX s'ajusta per gestionar de manera eficient l'entrada i la sortida de la memòria cau:

worker_processes auto; worker_connections 1024; worker_cpu_affinity 0-3; # alinea els treballadors amb els nuclis de la CPU 

Aquests ajustos garanteixen que les respostes emmagatzemades en memòria cau es proporcionin amb la màxima eficiència.

Resum: resultats de l'ajustament de la memòria cau de NGINX

Serverion ha millorat el rendiment i la fiabilitat en tot el seu sistemes d'allotjament mitjançant ajustos detallats de la memòria cau del proxy. Perfeccionant la jerarquia de la memòria cau, gestionant la configuració de actualització i optimitzant el processament de la capçalera, van mantenir un lliurament de contingut sense problemes. En temps real X-Proxy-Cache Les mètriques van permetre als equips informàtics ajustar la configuració de la memòria cau de manera eficaç, donant lloc a temps de resposta més ràpids, menys tensió als servidors d'origen i una millor disponibilitat per a les operacions empresarials.

Publicacions de bloc relacionades

ca