Երկարաժամկետ պրոքսավորված կապը սովորաբար զբաղեցնում է երկու սոքեթ՝ հաճախորդի և upstream-ի։ worker_connections հաշվում է երկու կողմերը։ Ուստի այն worker_processes-ով բազմապատկելը պրոքսի օգտատերերին հզորության խոստում չի տալիս։

Երբ կապերը ձախողվում են, հետևեք հաղորդված սահմանաչափին՝

ԱպացույցՍտուգման ենթակա կարգավորում կամ պրոցեսի վիճակ
worker_connections-ի սպառումWorker-ի կապերի բյուջեն՝ ներառյալ upstream սոքեթները
Օպերացիոն համակարգի «Չափազանց շատ բաց ֆայլեր» հաղորդագրությունըՖայլային դեսկրիպտորների սահմանաչափը, որը ժառանգում է ծառայության փաստացի պրոցեսը

Լսող սոքեթները, մատյանները և այլ բաց ֆայլերը նույնպես սպառում են դեսկրիպտորներ։ Կապերի վերօգտագործումը և երթևեկության խառնուրդը փոխում են օգտատերերի և սոքեթների հարաբերությունը։

worker_rlimit_nofile կարգավորում է worker-ի սահմանաչափերը՝ միջավայրի թույլտվությունների շրջանակում։ systemd միավորը կարող է սահմանել LimitNOFILE; ինտերակտիվ shell-ի ulimit-ը չի փոխում աշխատող ծառայությունը։

Չափորոշեք սահմանաչափերը ըստ աշխատանքային բեռի և ստուգեք, թե ով է դրանք սպառում։ Անսպասելի հաճախորդները կամ կրկնվող ձախողվող upstream կապերը կարող են սպառել նախկինում բավարար բյուջեն։ Ավելի մեծ պրոցեսների քանակը կամ հիշողության սահմանաչափը չի վերացնում դեսկրիպտորների պակասը։

Առնչվող հոդվածներ