Lai izvairītos no 502-504 kļūdām lielas satiksmes laikā, galvenie NGINX iestatījumi, uz kuriem jākoncentrējas, ir:
1. Darbinieku procesi un savienojumi:
- Darbinieka_procesi: nodrošiniet, lai optimālais darbinieka procesu skaits atbilstu CPU kodolu skaitam. Ja ir liela trafika, iestatiet “worker_processes” uz “auto”, lai ļautu NGINX automātiski noteikt optimālo vērtību[1][2][5].
- Worker_connections: palieliniet maksimālo savienojumu skaitu, ko katrs darbinieka process var apstrādāt vienlaikus. Lielai datplūsmai iestatiet parametram `worker_connections' lielāku vērtību, piemēram, 4096[1][2][5].
2. Taimauts un dīkstāves laiki:
- "Keepalive_timeout": iestatiet šo vērtību, kas ir tuvu jūsu vidējam reakcijas laikam, lai nodrošinātu, ka uzturēšanas savienojumi tiek efektīvi izmantoti. Ja satiksme ir liela, iestatiet `keepalive_timeout` uz mazāku vērtību, piemēram, 10 sekundes[1][2][5].
- `client_header_timeout`: iestatiet šo vērtību, kas līdzsvaro klienta pieprasījuma galvenes apstrādi ar servera resursu izmantošanu. Ja ir liela trafika, iestatiet `client_header_timeout' uz mazāku vērtību, piemēram, 10 sekundes[1][2][5].
3. FastCGI iestatījumi:
- "fastcgi_buffer_size", "fastcgi_buffers", "fastcgi_busy_buffers_size" un "fastcgi_temp_file_write_size": precizējiet šos iestatījumus, lai optimizētu PHP apstrādi un samazinātu 502 kļūdu iespējamību[3][5].
4. Kešatmiņa un saspiešana:
- `gzip on`: iespējojiet gzip saspiešanu, lai samazinātu joslas platuma lietojumu un uzlabotu lapas ielādes laiku[3][5].
- Open_file_cache un saistītie iestatījumi: ieviešiet periodiski piekļūtu failu kešatmiņu, lai samazinātu servera slodzi un latentumu[5].
5. Uzraudzība un problēmu novēršana:
- Regulāri pārraugiet piekļuves žurnālus, lai noteiktu veiktspējas vājās vietas un novērstu problēmas[4][5].
Optimizējot šos iestatījumus, jūs varat samazināt 502-504 kļūdu iespējamību lielas trafika laikā un nodrošināt, ka jūsu NGINX serveris efektīvi apstrādā pieprasījumus.
Citāts:[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