Egy hosszú életű proxizott kapcsolat általában két socketet foglal: a kliensét és az upstreamét. A worker_connections mindkét oldalt számolja. Ezért a worker_processes-gyel való megszorzása nem ígér kapacitást a proxy felhasználóinak.

Ha a kapcsolatok meghibásodnak, kövesse a jelzett korlátot:

BizonyítékEllenőrizendő beállítás vagy folyamatállapot
a worker_connections kimerüléseA worker kapcsolati kerete, az upstream socketekkel együtt
Az operációs rendszer „Túl sok nyitott fájl” üzeneteA tényleges szolgáltatási folyamat által örökölt fájlleíró-korlát

A figyelő socketek, a naplók és más nyitott fájlok szintén leírókat fogyasztanak. A kapcsolatok újrafelhasználása és a forgalom összetétele megváltoztatja a felhasználók és a socketek viszonyát.

A worker_rlimit_nofile a környezet engedélyeinek függvényében módosítja a worker korlátait. Egy systemd unit beállíthatja a LimitNOFILE értéket; egy interaktív shell ulimit értéke nem változtatja meg a futó szolgáltatást.

A korlátokat a munkaterheléshez méretezze, és vizsgálja meg, ki fogyasztja azokat. A váratlan kliensek vagy az ismételten meghibásodó upstream kapcsolatok kimeríthetnek egy korábban elegendő keretet. A nagyobb folyamatszám vagy memóriakorlát nem javítja a leíróhiányt.

Kapcsolódó cikkek