A nagy forgalom során előforduló 502-504-es hibák elkerülése érdekében a legfontosabb NGINX-beállítások a következők:
1. Munkás folyamatok és kapcsolatok:
- "worker_processes": Győződjön meg arról, hogy a munkafolyamatok optimális száma megegyezik a CPU magok számával. Nagy forgalom esetén állítsa a "worker_processes" paramétert "auto" értékre, hogy az NGINX automatikusan meghatározza az optimális értéket[1][2][5].
- `worker_connections`: Növelje az egyes dolgozói folyamatok egyidejűleg kezelhető kapcsolatok maximális számát. Nagy forgalom esetén állítsa a „dolgozói_kapcsolatok” értéket magasabb értékre, például 4096[1][2][5].
2. Időtúllépések és tétlenségi idők:
- `keepalive_timeout`: Állítsa ezt az átlagos válaszidőhöz közeli értékre, hogy biztosítsa az életben tartási kapcsolatok hatékony kihasználását. Nagy forgalom esetén állítsa a "keepalive_timeout" értéket alacsonyabb értékre, például 10 másodpercre[1][2][5].
- `client_header_timeout`: Állítsa be ezt az értéket, amely egyensúlyba hozza az ügyfélkérelem fejléc feldolgozását a szerver erőforrás-kihasználásával. Nagy forgalom esetén állítsa a „client_header_timeout” paramétert alacsonyabb értékre, például 10 másodpercre[1][2][5].
3. FastCGI beállítások:
- `fastcgi_buffer_size`, `fastcgi_buffers`, `fastcgi_busy_buffers_size` és `fastcgi_temp_file_write_size`: Finomhangolja ezeket a beállításokat a PHP feldolgozás optimalizálása és az 502-es hibák valószínűségének csökkentése érdekében[3][5].
4. Gyorsítótár és tömörítés:
- `gzip on`: Engedélyezze a gzip tömörítést a sávszélesség-használat csökkentése és az oldalak betöltési idejének javítása érdekében[3][5].
- "Open_file_cache" és a kapcsolódó beállítások: Az időszakosan elért fájlok gyorsítótárazása a szerver terhelésének és késleltetésének csökkentése érdekében[5].
5. Monitoring és hibaelhárítás:
- Rendszeresen figyelje a hozzáférési naplókat a teljesítmény szűk keresztmetszete azonosítása és a problémák elhárítása érdekében[4][5].
A beállítások optimalizálásával minimálisra csökkentheti az 502-504-es hibák valószínűségét nagy forgalom esetén, és biztosíthatja, hogy NGINX-kiszolgálója hatékonyan kezelje a kéréseket.
Idézetek:[1] https://www.freshblurbs.com/blog/2015/11/28/high-load-nginx-config.html
[2] https://www.webhi.com/how-to/optimize-nginx-configuration-for-high-traffic-websites-busy-server/
[3] https://phpenterprisesystems.com/web-servers/215-example-nginx-configuration-for-high-traffic-high-load-php-web-sites
[4] https://blog.martinfjordvald.com/optimizing-nginx-for-high-traffic-loads/
[5] https://webdock.io/en/docs/webdock-control-panel/optimizing-performance/optimizing-nginx-high-traffic-websites