VestaCP WEB xizmati "phpfcgid" shablonini tanlagandan so'ng, ko'p sonli PHP-CGI jarayonlari xotiraning tezda tugashiga olib keladi:
- Serverni qayta ishga tushirganimdan keyin bir necha soat davomida xotiram tugab qoldi.
- Ilgari bo'sh turgan PHP-CGI jarayoni o'chirilmaydi va bitta jarayon kamida 1M xotirani iste'mol qiladigan 20 ga yaqin kichik jarayonlarni boshqaradi.
SSH da ishlatiladi htop
buyrug'i (o'rnatish talab qilinadi), siz ushbu holatni ko'rishingiz mumkin ▼
Agar siz htop buyrug'idan foydalanganda "-bash: htop: buyrug'i topilmadi" xato xabarini olsangiz, yechim uchun ushbu qo'llanmani ko'ring ▼
Ko'p sonli PHP-CGI jarayonlari xotiraning tezda tugashiga olib keladi.Muammo VestaCP da yotadi.CentOsPhpfcgid shablonida optimallashtirilmagan konfiguratsiya qo'llaniladi.
- phpfcgid shablonidagi VestaCP, 1 tagacha ta'sirchan jarayonni ishga tushirish uchun 20 PHP-CGI jarayonini o'rnating.
请 参阅 /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh
Faylning 13-qatori:
export PHP_FCGI_CHILDREN=20
Biroq, bunday sozlash PHP subprocess boshqaruv hujjatlaridagi Apache ogohlantirishini buzadi:
PHP bolalar jarayonini boshqarish (PHP_FCGI_CHILDREN) har doim mod_fcgid bilan o'chirib qo'yilishi kerak, bu bir vaqtning o'zida faqat bitta so'rovni o'zi yaratgan dastur jarayonlariga yo'naltiradi; shuning uchun PHP tomonidan yaratilgan har qanday yordamchi jarayonlar samarali ishlatilmaydi. (Bundan tashqari, PHP bolalar jarayonlari to'g'ri tugatilmasligi mumkin. .) Sukut bo'yicha va muhit o'zgaruvchisi sozlamalari bilan PHP_FCGI_CHILDREN=0, PHP bolalar jarayonini boshqarish o'chirilgan.
Chunki Apache ning mod_fcgid modulida PHP-CGI jarayoni faqat bitta so'rovga javob berishi va bir vaqtning o'zida ishlashi mumkin, PHP-CGI bola jarayoni juda samarasiz.
Shuning uchun PHP subprocess boshqaruvi sozlamalari to'g'ridan-to'g'ri o'chirib qo'yilishi kerak ▼
PHP_FCGI_CHILDREN=0
Shu bilan birga, agar sizda allaqachon yaratilgan virtual xost mavjud bo'lsa, barcha veb-saytlarning konfiguratsiya fayllarini o'zgartirishingiz kerak ▼
/home/用户名/web/域名/cgi-bin/fcgi-starter
Fcgi-starter konfiguratsiya faylini ochgandan so'ng, quyidagi ▼ kiriting
export PHP_FCGI_CHILDREN=20
▼ ga o'zgartiring
export PHP_FCGI_CHILDREN=0
- O'zgartirishdan so'ng, PHP subprocess boshqaruvi mod_fcgid rejimida o'chiriladi.
- PHP-CGI jarayoni endi ko'p xotirani tejashga qodir bo'lgan bolalar jarayonlarini ishlab chiqarmaydi.
Shuningdek, VestaCP bo'sh jarayonlar uchun tugatish mexanizmini o'rnatmaydi:
- Barcha yangi bajarilgan PHP-CGI jarayonlari tizim qayta ishga tushirilgunga qadar xotiradan foydalanishda davom etadi.
Buni tuzatish uchun mod_fcgid konfiguratsiya faylini qo'shing /etc/httpd/conf.d/fcgid.conf
▼-ga quyidagi sozlamalarni qo'shing
FcgidIdleTimeout 120
- Apache-ni 2 daqiqa (120 soniya) bo'sh turgan PHP-CGI jarayonlarini avtomatik ravishda o'chirishga sozlang.
Sozlash tugallangach, Apache xizmatini qayta ishga tushiring ▼
service httpd restart
Xizmat qayta ishga tushirilgandan so'ng, HTOP da ilgari ko'rsatilgan yuzlab PHP-CGI jarayonlari endi ko'rsatilmaydi.
Odatda, bitta Vesta CP foydalanuvchisi uchun bitta PHP-CGI jarayoni 30 dan 40 M gacha xotirani iste'mol qiladi, bu to'liq qoniqarli.Linuxxost talablari.
shuning uchunInternet-marketingodamlar yaxshilik qilishni xohlashadiSEO, Vesta CP va shablonlari ^_^ konfiguratsiyasini optimallashtirish juda muhim
Siz VestaCP panelida quyidagi o'quv qo'llanmalarini ko'rishingiz mumkin ▼
Umid qilamanki, Chen Veyliang blogi ( https://www.chenweiliang.com/ ) "VestaCP phpfcgid shablonini sozlash jarayonini optimallashtirish, bir nechta xotiraning 500 ta xatosi" bilan bo‘lishdi, bu siz uchun foydalidir.
Ushbu maqolaning havolasini baham ko'rish uchun xush kelibsiz:https://www.chenweiliang.com/cwl-735.html
Eng so'nggi yangiliklardan xabardor bo'lish uchun Chen Veyliang blogining Telegram kanaliga xush kelibsiz!
📚 Ushbu qo'llanmada katta ahamiyatga ega, 🌟Bu kamdan-kam imkoniyat, uni qo'ldan boy bermang! ⏰⌛💨
Baham ko'ring va yoqsa like!
Sizning baham ko'rish va yoqtirishlaringiz bizning doimiy motivatsiyamizdir!