Mövzunu Açan
#0
NGINX ilə Yüksək Performanslı Veb Server Konfiqurasiyası
Veb tətbiqlərin sürəti və etibarlılığı istifadəçi təcrübəsi və axtarış motoru optimallaşdırılması üçün kritik əhəmiyyət kəsb edir. NGINX, özünün yüngül arxitekturası və hadisəyə əsaslanan modelləşdirilməsi sayəsində yüksək trafikli saytlar üçün ideal seçimdir. Düzgün konfiqurasiya ilə NGINX-in potensialını tamamilə reallaşdırmaq mümkündür.Əsas İşçi Proseslərin Tənzimlənməsi
NGINX-in performansı birbaşaworker_processes və worker_connections direktivləri ilə əlaqəlidir.- worker_processes: Bu parametr NGINX-in işə salacağı işçi proseslərinin sayını müəyyənləşdirir. Ümumiyyətlə, serverin CPU nüvələrinin sayına bərabər təyin etmək optimal hesab olunur. Məsələn, 4 nüvəli bir server üçün:
CODE1
worker_processes 4;
- worker_connections: Hər bir işçi prosesinin eyni anda idarə edə biləcəyi maksimum bağlantı sayını göstərir. Bu dəyər serverin RAM və fayl deskriptor limitləri nəzərə alınaraq artırılmalıdır. Yüksək trafikli saytlar üçün ən azı 1024 və ya daha yuxarı bir dəyər tövsiyə olunur:
CODE123
events { worker_connections 2048; }
Bağlantıların İdarə Edilməsi və Şəbəkə Optimallaşdırılması
Effektiv bağlantı idarəetməsi veb serverin cavab sürətini əhəmiyyətli dərəcədə yaxşılaşdırır.- keepalive_timeout: Müştəri ilə server arasında bağlantının nə qədər müddət açıq qalacağını müəyyənləşdirir. Bu, eyni müştərinin birdən çox sorğu göndərdiyi zaman yeni bağlantı qurma xərcini azaldır. 15-30 saniyə ideal sayılır:
CODE1
keepalive_timeout 25s;
- sendfile on; tcpnopush on; tcpnodelay on;: Bu direktivlər fayl göndərmə prosesini optimallaşdırır.
sendfilefaylları birbaşa diskdən şəbəkəyə kopyalayır,tcp_nopushböyük paketləri bir arada göndərir,tcp_nodelayisə kiçik paketlərin dərhal göndərilməsini təmin edir, interaktivliyi artırır:
CODE123
sendfile on; tcp_nopush on; tcp_nodelay on;
Gzip Sıxılmasının Aktivləşdirilməsi
Gzip sıxılması veb resurslarının ölçüsünü əhəmiyyətli dərəcədə azaldaraq şəbəkə trafikini minimuma endirir və yüklənmə sürətini artırır.CODE
1234567gzip on;
gzip_vary on;
gzip_proxied any;
gzip_comp_level 6;
gzip_buffers 16 8k;
gzip_http_version 1.1;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript;Bu konfiqurasiya ilə NGINX yalnız müəyyən edilmiş fayl növlərini sıxacaq və CPU istifadəsini balanslaşdıracaqdır.