Cititorii ca tine ajută la sprijinirea MUO. Când efectuați o achiziție folosind link-uri de pe site-ul nostru, este posibil să câștigăm un comision de afiliat. Citeşte mai mult.

NGINX este un server web popular, gratuit și open-source. Configurațiile implicite NGINX sunt suficient de bune pentru a face serverul web să funcționeze.

Cu toate acestea, dacă doriți să utilizați NGINX la maximum, trebuie să vă jucați cu fișierele sale de configurare și să setați parametrii care vor optimiza performanța serverului. Veți găsi fișierele de configurare în /etc/nginx director pe o mașină Linux.

Ce este NGINX?

NGINX este un server web modern pe care îl puteți folosi ca streamer media, server de e-mail, proxy invers, echilibrator de încărcare, server cache și multe altele.

Folosit de multe profiluri mari precum VMware, IBM, Cisco, Apple, Microsoft LinkedIn, Netflix, Facebook, Twitter etc., NGINX este cunoscut pe scară largă pentru performanța sa de top. Un alt avantaj al utilizării NGINX este că este ușor de configurat și de învățat.

instagram viewer

Cerințe preliminare pentru reglarea performanței NGINX pe Linux

Trebuie să îndepliniți următoarele cerințe înainte de a începe cu configurațiile NGINX:

  1. Un server NGINX implementat și configurat pe Linux
  2. O înțelegere de bază a NGINX și a fișierelor sale de configurare

Dacă îndepliniți aceste cerințe, sunteți gata să reglați NGINX pentru performanțe optime. Să vedem cum să o facem.

1. Configurați procesele de lucru în NGINX

Arhitectura NGINX constă dintr-un proces principal și mai multe procese de lucru. Sarcina procesului principal este de a evalua configurația și de a gestiona lucrătorii. Pe de altă parte, rolul unui proces de lucru este de a trata cererile primite și de a crea o conexiune între client și server.

Valoarea procesului este setată la auto în mod implicit. Aceasta setează numărul de procese de lucru egal cu numărul de nuclee CPU disponibile. Pentru a ști câte nuclee CPU sunt prezente în sistemul dvs., executați următoarea comandă:

procesor grep /proc/cpuinfo | wc -l

Dacă doriți să creșteți numărul de procese de lucru, trebuie să configurați acest lucru în fișierul de configurare NGINX.

Deschideți fișierul cu nano:

nano etc/nginx/nginx.conf

Pentru a configura mai multe procese de lucru, modificați valoarea implicită la numărul maxim de nuclee CPU disponibile în sistemul dumneavoastră.

2. Configurați conexiunile lucrătorilor

Un alt parametru pe care îl puteți modifica pentru a îmbunătăți performanța NGINX este conexiunile lucrătorilor. Acesta este numărul maxim de conexiuni TCP pe care fiecare proces de lucru le poate gestiona simultan.

Majoritatea sistemelor au o valoare implicită de 512 conexiuni, dar multe sisteme moderne acceptă și un număr mai mare. Puteți verifica câte conexiuni acceptă sistemul dvs. cu:

ulimit -n

Ieșirea va fi numărul maxim de conexiuni acceptate. Apoi puteți modifica conexiuni_lucrători variabilă în fișierul de configurare NGINX pentru a îmbunătăți performanța.

3. Permite comprimarea GZIP în NGINX

NGINX folosește GZIP pentru comprimarea și decomprimarea fișierelor. Dacă este activat în fișierul de configurare NGINX, puteți economisi lățime de bandă și puteți îmbunătăți timpul de încărcare a site-ului web atunci când conexiunea este lentă.

Pentru a permite compresia GZIP, adăugați următoarele linii în fișierul de configurare NGINX:

Server {
gzip on;
gzip_vary on;
gzip_min_length 10240;
gzip_proxied a expirat nu-cacheNu-magazinprivat auth;
gzip_types text/text simplu/css text/xml text/javascript application/x-javascript application/xml;
gzip_disable „MSIE [1-6]\”.;
}

4. Limită valoarea timeout în NGINX

Valorile de timeout reduse joacă, de asemenea, un rol major în îmbunătățirea performanței NGINX. The ține în viață conexiunile reduc supraîncărcarea procesorului și a rețelei la deschiderea și închiderea conexiunilor.

Puteți modifica următorii parametri din fișierul de configurare pentru a limita timeout-urile:

http
{
client_body_timeout 12;
client_header_timeout 12;
keepalive_timeout 15;
send_timeout 10;
}

5. Ajustați dimensiunea tamponului

De asemenea, puteți ajusta buffer-urile NGINX pentru a optimiza performanța serverului. Dacă dimensiunea tamponului este prea mică, atunci NGINX va scrie într-un fișier temporar care face ca operațiunile I/O uriașe să ruleze constant.

Trebuie să setați următorii parametri tampon pentru ca NGINX să funcționeze cel mai bine:

http
{
client_body_buffer_size 10K;
client_header_buffer_size 1k;
client_max_body_size 8m;
large_client_header_buffers 4 4k;
}

6. Dezactivați jurnalele de acces sau activați jurnalele de acces

Jurnalele consumă o cantitate mare de spațiu pe disc și cicluri CPU/IO care pot afecta performanța serverului dacă înregistrează fiecare cerere.

Puteți dezactiva jurnalele de acces, ceea ce va economisi spațiu pe disc și procesarea CPU. Pentru a dezactiva jurnalele de acces, adăugați următoarea linie la fișierul de configurare NGINX:

access_log off;

Jurnalele sunt importante deoarece ajută la depanarea unei probleme. Dezactivarea completă a jurnalelor nu este o practică bună. În acest caz, puteți activa jurnalele de acces în buffering. Acest lucru va permite NGINX să tamponeze o serie de jurnale și să le scrie simultan în fișierul jurnal, în loc să aplice diferite operațiuni de jurnal la fiecare cerere.

Adăugați următoarea linie în fișierul de configurare NGINX pentru a permite salvarea jurnalelor de acces:

access_log/var/log/nginx/access.logprincipaltampon=16k

7. Ajustați perioada de stocare în cache a conținutului static în NGINX

Conținutul de pe site-ul web care rămâne același pe pagini este cunoscut ca conținut static. Memorarea în cache a acestui conținut îi permite să fie plasat în locații care sunt ușor accesibile. Acest mecanism reduce utilizarea lățimii de bandă, permite accesibilitatea rapidă și, ulterior, îmbunătățește performanța site-ului web.

Când un client solicită conținut static, serverul va servi o versiune stocată în cache a conținutului. Adăugați următoarele linii în fișierul gazdă virtuală plasat în fișierul /etc/nginx/sites-available director:

locație ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
expiră 90d;
}

Această configurație va stoca fișierele în cache timp de 90 de zile de la ultima oră de acces la browser.

8. Activați Open File Cache în NGINX

De asemenea, puteți utiliza parametrii cache a fișierelor deschise în fișierul de configurare NGINX pentru a-și îmbunătăți performanța. Această directivă permite ca descriptorul de fișier și fișierele vizitate frecvent să fie stocate în cache pe server.

Adăugați următoarele rânduri în http secțiunea din fișierul de configurare pentru a activa memoria cache a fișierelor deschise:

http {
open_file_cache max=1024 inactiv=10s;
open_file_cache_valid 60s;
open_file_cache_min_uses 2;
open_file_cache_errors activat;
}

Aduceți tot ce este mai bun din NGINX modificându-i fișierele de configurare

O bună practică de urmat atunci când schimbați configurațiile este să vă ocupați de o setare la un moment dat și să o testați. Dacă funcționează, treceți la următoarea setare. Dacă nu, puteți schimba întotdeauna configurația înapoi la valoarea implicită.

Prin modificarea parametrilor configurați în fișierele de configurare NGINX, cum ar fi nginx.conf și fișiere gazdă virtuală, puteți pirata NGINX pentru a oferi cea mai bună performanță.