Suplanuokite NGINX tarpinio serverio lizdus prieš didindami worker_connections
Proksiuojamas ryšys paprastai užima ir kliento, ir upstream lizdą; atskirkite worker ryšių limitą nuo paslaugos failų deskriptorių limito.
Vienas ilgalaikis proksiuojamas ryšys paprastai užima du lizdus: kliento ir upstream. worker_connections skaičiuoja abi puses. Todėl padauginus jį iš worker_processes proxy naudotojams talpa nežadama.
Kai ryšiai nepavyksta, laikykitės pranešto limito:
| Įrodymas | Nustatymas arba proceso būsena, kurią reikia patikrinti |
|---|---|
| worker_connections išsekimas | Worker ryšių biudžetas, įskaitant upstream lizdus |
| Operacinės sistemos „Per daug atidarytų failų“ | Failų deskriptorių limitas, kurį paveldi tikrasis paslaugos procesas |
Klausymosi lizdai, žurnalai ir kiti atidaryti failai taip pat naudoja deskriptorius. Ryšių pakartotinis naudojimas ir srauto mišinys keičia naudotojų ir lizdų santykį.
worker_rlimit_nofile koreguoja worker limitus pagal aplinkos leidimus. systemd unitas gali nustatyti LimitNOFILE; interaktyvios komandinės eilutės ulimit nekeičia veikiančios paslaugos.
Matuokite limitus pagal darbo krūvį ir patikrinkite, kas juos naudoja. Netikėti klientai ar nuolat nepavykstantys upstream ryšiai gali išeikvoti anksčiau pakakusį biudžetą. Didesnis procesų skaičius ar atminties limitas neištaiso deskriptorių trūkumo.