VestaCP WEB кызматы "phpfcgid" үлгүсүн тандагандан кийин, көп сандагы PHP-CGI процесстери эстутумдун бат түгөнүшүнө алып келет:
- Мен серверди өчүрүп күйгүзгөндөн кийин бир нече саат бою эс тутумум түгөнүп жатты.
- Мурда иштебей турган PHP-CGI процесси өлтүрүлбөйт жана бир процесс 1га жакын субпроцесстерди иштетип, кеминде 20M эстутумду талап кылат.
SSH колдонулат htop
буйрук (орнотуу талап кылынат), сиз бул статусту көрө аласыз ▼
Эгер сиз htop буйругун колдонгондо "-bash: htop: команда табылган жок" ката билдирүүсүн алсаңыз, чечимди бул окуу куралын караңыз ▼
Көптөгөн PHP-CGI процесстери эстутумдун бат түгөнүшүнө алып келет.Маселе VestaCPде жатат.CentOSphpfcgid шаблонунда оптимизацияланбаган конфигурация колдонулат.
- phpfcgid үлгүсүндөгү VestaCP, 1 PHP-CGI процессин 20 бала процессине чейин иштетүү үчүн орнотуңуз.
Караңыз /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh
Файлдын 13-сапы:
export PHP_FCGI_CHILDREN=20
Бирок, мындай орнотуу PHP субпроцессинин башкаруу документтериндеги Apache эскертүүсүн бузат:
PHP бала процессин башкаруу (PHP_FCGI_CHILDREN) ар дайым mod_fcgid менен өчүрүлүшү керек, ал бир эле учурда ал пайда болгон колдонмо процесстерине бир гана суроо-талапты багыттайт; Ошентип, PHP тарабынан түзүлгөн ар кандай кошумча процесстер эффективдүү колдонулбайт. .) Демейки боюнча, жана чөйрө өзгөрмө жөндөө менен PHP_FCGI_CHILDREN=0, PHP бала процессин башкаруу өчүрүлгөн.
Анткени Apache'нин mod_fcgid модулунда PHP-CGI процесси бир гана суроо-талапка жооп берип, бир убакта иштей алат, PHP-CGI бала процесси өтө натыйжасыз.
Ошондуктан, PHP субпроцесстерин башкаруунун жөндөөлөрү түздөн-түз өчүрүлүшү керек ▼
PHP_FCGI_CHILDREN=0
Ошол эле учурда, эгер сизде мурунтан эле түзүлгөн виртуалдык хост болсо, бардык веб-сайттардын конфигурация файлдарын өзгөртүү керек ▼
/home/用户名/web/域名/cgi-bin/fcgi-starter
fcgi-starter конфигурация файлын ачкандан кийин, төмөнкү ▼ киргизиңиз
export PHP_FCGI_CHILDREN=20
▼ болуп өзгөртүлдү
export PHP_FCGI_CHILDREN=0
- Өзгөртүүдөн кийин, PHP субпроцесстерин башкаруу mod_fcgid режиминде өчүрүлөт.
- PHP-CGI процесси мындан ары бала процесстерин жаратпайт, бул көп эстутумду үнөмдөйт.
Ошондой эле, VestaCP бош процесстер үчүн токтотуу механизмин орнотпойт:
- Бардык жаңы аткарылган PHP-CGI процесстери тутум кайра жүктөлмөйүнчө эстутумду колдоно берет.
Муну оңдоо үчүн, жөн гана mod_fcgid конфигурация файлын кошуңуз /etc/httpd/conf.d/fcgid.conf
▼ ичинде төмөнкү орнотууларды кошуңуз
FcgidIdleTimeout 120
- Apacheди 2 мүнөткө (120 секунд) иштебей турган PHP-CGI процесстерин автоматтык түрдө жок кылуу үчүн коюңуз.
Орнотуу аяктагандан кийин, Apache кызматын кайра иштетиңиз ▼
service httpd restart
Кызмат кайра иштетилгенден кийин, HTOPде мурда көрсөтүлгөн жүздөгөн PHP-CGI процесстери мындан ары көрсөтүлбөйт.
Адатта, бир гана Vesta CP колдонуучусу үчүн бир PHP-CGI процесси 30-40М эстутумду талап кылат, бул толугу менен канааттандырат.Linuxхост талаптары.
Ошондуктан,Интернет маркетингэл жакшылык кылгысы келетSEO, Vesta CP жана шаблондорунун конфигурациясын оптималдаштыруу абдан маанилүү ^_^
Сиз VestaCP панелинен төмөнкү окуу куралдарын карасаңыз болот ▼
Hope Chen Weiliang блогу ( https://www.chenweiliang.com/ ) "VestaCP phpfcgid шаблон конфигурация процессин оптималдаштыруу бир нече эс тутумдун чарчаган 500 катасы" менен бөлүштү, бул сизге пайдалуу.
Бул макаланын шилтемесин бөлүшүүгө кош келиңиз:https://www.chenweiliang.com/cwl-735.html
Акыркы жаңылыктарды алуу үчүн Чен Вейляндын блогунун Telegram каналына кош келиңиз!
📚 Бул колдонмо чоң баалуулуктарды камтыйт, 🌟Бул сейрек кездешүүчү мүмкүнчүлүк, аны өткөрүп жибербеңиз! ⏰⌛💨
Бөлүшүп, жакса лайк!
Сиздин бөлүшүүңүз жана лайктарыңыз биздин үзгүлтүксүз мотивациябыз!