Mida teha, kui nginx-iga töötades tekib viga, kui ühenduste arv ületab 1024?
sobes.tech AI
Vastus AI-lt
See näitab avatud failide deskriptorite arvu piirangut.
Lahendused:
-
Tõsta
worker_connectionsNginx konfiguratsioonis:// Maksimaalse ühenduste arvu suurendamine ühe worker protsessi kohta events { worker_connections 4096; // või rohkem, sõltuvalt vajadustest ja ressurssidest } -
Suurenda avatud failide limiiti operatsioonisüsteemi tasandil:
- Praeguse sessiooni kasutajale:
# Ajutiselt suurendada avatud failide limiiti ulimit -n 65536 - Kogu süsteemi jaoks (püsivalt):
Redigeeri faili
/etc/security/limits.conf. Lisa read:(Asenda# Kasutaja spetsiifilised piirangud nginx soft nofile 65536 nginx hard nofile 65536 # Võimalusel kõigi kasutajate jaoks # * soft nofile 65536 # * hard nofile 65536nginxkasutajanimega, kui see on teine.) Taaskäivita süsteem või logi välja ja sisse, või käivitasysctl -p, et muudatused jõustuksid.
- Praeguse sessiooni kasutajale:
-
Kontrolli kerneli globaalset seadet: Veendu, et
fs.file-maxväärtus on piisavalt kõrge.# Kontrolli praegust väärtust cat /proc/sys/fs/file-max # Määra uus väärtus ajutiselt # sudo sysctl -w fs.file-max=100000 # Püsivalt määra - redigeeri `/etc/sysctl.conf` # Lisa rida: fs.file-max = 100000 # Rakenda muudatused # sudo sysctl -p -
Veendu, et Nginx kasutajal on õigus avada nii palju faile: Kontrolli, millise kasutajana Nginx töötab ja millised piirangud on selle kasutaja jaoks määratud. See on seotud punktiga 2.
-
Taaskäivita Nginx: Pärast konfiguratsiooni ja süsteemi piirangute muudatusi on vaja Nginx taaskäivitada.
# Taaskäivita Nginx sudo systemctl reload nginx # Kui see ei aita # sudo systemctl restart nginx
Lahenduse prioriteet:
- Kontrolli ja suurenda
worker_connections. - Kontrolli ja suurenda failipiiranguid Nginx kasutaja jaoks.
- Kontrolli ja suurenda globaalset
fs.file-maxlimiiti. - Taaskäivita Nginx.
Oluline on meeles pidada, et piirangute suurendamine peaks olema põhjendatud ja vastama serveri ressurssidele (mälu, CPU). Liiga kõrged väärtused võivad põhjustada süsteemi ebastabiilsust.