Squid'ning haqiqiy fayl deskriptori chegarasini topish
PAM sozlamalarini o'zgartirish yoki sig'im retseptidan qat'iy nofile qiymatini ko'chirishdan oldin ishlab turgan proksi jarayon chegaralarini o'qing.
Kirish qobig'ining ulimit -n qiymatiga ishonishdan oldin ishlab turgan demonni tekshiring. squid.service ishlatadigan o'rnatish uchun shundan boshlang:
systemctl show squid.service -p MainPID -p LimitNOFILE
systemctl cat squid.service
/proc/PID/limits ni haqiqiy jarayon ID si bilan o'qing. Ko'p jarayonli joylashtirishda tegishli ishchini ham tekshiring. Konfiguratsiyada saqlangan qiymat bu jarayon uni meros olganining isboti emas.
| Boshqaruv | Qamrov |
|---|---|
Qobiq ulimit va PAM limits.conf | Qobiqning avlodlari yoki PAM sozlamasini haqiqatda ishlatadigan sessiyalar |
systemd LimitNOFILE= | Shu xizmatning resurs siyosati ostida ishga tushirilgan jarayonlar |
Squid max_filedescriptors, qo'llab-quvvatlangan joyda | Operatsion tizim cheklovlari ichidagi dastur chegarasi |
Administrator faylni o'zgartirgani uchungina tizim xizmati PAM tuzatishlarini qabul qilmaydi. systemd chegarasini o'zgartirish o'rinli bo'lganda xizmatga xos drop-in dan foydalaning. Squid hujjatlashtiradi: max_filedescriptors o'zgarishi uchun qayta ishga tushirish kerak; sozlanmay qolsa, OS ning yumshoq chegarasi meros olinadi.
Chegarani foydalanuvchilarga emas, deskriptorlarga qarab o'lchang. Mijozlar bir nechta soket ushlab turishi mumkin, shuningdek chiqish ulanishlari, jurnallar va yordamchi quvurlar ham deskriptor sarflaydi. Chegarani ko'tarish har bir mumkin bo'lgan deskriptor uchun darhol qat'iy RAM ajratmasdan ko'proq iste'molga imkon beradi. Na eski soket boshiga xotira taxmini, na 65,535 universal sig'im talabi yoki Linux shifti emas.
Xizmat o'zgarganidan keyin yangi jarayon chegaralarini mo'ljallangan qiymatlar bilan solishtiring. Nosozliklar ulardan ancha pastda yuz bersa, haqiqatda tugab borayotgan resursni tekshiring.