VestaCP Matapos piliin ng serbisyo ng WEB ang template na "phpfcgid", ang malaking bilang ng mga proseso ng PHP-CGI ay nagiging sanhi ng mabilis na pagkaubos ng memorya:
- Karaniwang nauubusan ako ng memory sa loob ng ilang oras pagkatapos i-restart ang server.
- Ang dating idle na proseso ng PHP-CGI ay hindi pinapatay, at ang isang proseso ay nagpapatakbo ng halos 1 subprocesses, na kumokonsumo ng hindi bababa sa 20M ng memorya.
Ginamit sa SSH htop
command (kailangan ang pag-install), maaari mong tingnan ang status na ito ▼
Kung nakakuha ka ng mensahe ng error na "-bash: htop: command not found" kapag ginamit mo ang htop command, pakitingnan ang tutorial na ito para sa solusyon ▼
Ang isang malaking bilang ng mga proseso ng PHP-CGI ay nagiging sanhi ng mabilis na pagkaubos ng memorya. Ang problema ay nasa VestaCPCentOSSa template na phpfcgid, ginagamit ang isang hindi na-optimize na pagsasaayos.
- VestaCP sa phpfcgid template, magtakda ng 1 PHP-CGI na proseso para magpatakbo ng hanggang 20 child na proseso.
Tingnan mo /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh
Linya 13 ng file:
export PHP_FCGI_CHILDREN=20
Gayunpaman, nilalabag ng naturang setup ang babala ni Apache sa dokumentasyon ng pamamahala ng subprocess ng PHP:
PHP child process management (PHP_FCGI_CHILDREN) ay dapat palaging hindi pinagana gamit ang mod_fcgid, na magruruta lamang ng isang kahilingan sa isang pagkakataon sa mga proseso ng aplikasyon na nabuo nito; kaya, ang anumang mga proseso ng bata na nilikha ng PHP ay hindi magagamit nang epektibo. .) Bilang default, at kasama ang setting ng variable ng kapaligiran PHP_FCGI_CHILDREN=0, ang PHP child process management ay hindi pinagana.
Dahil sa mod_fcgid module ng Apache, ang proseso ng PHP-CGI ay maaari lamang tumugon sa isang kahilingan at tumakbo nang sabay-sabay, ang proseso ng bata na PHP-CGI ay napaka hindi epektibo.
Samakatuwid, ang mga setting para sa PHP subprocess management ay dapat na direktang i-disable ▼
PHP_FCGI_CHILDREN=0
Kasabay nito, kung mayroon ka nang nabuong virtual host, kailangan mong baguhin ang configuration file ng lahat ng website ▼
/home/用户名/web/域名/cgi-bin/fcgi-starter
Pagkatapos buksan ang fcgi-starter configuration file, ipasok ang sumusunod na ▼
export PHP_FCGI_CHILDREN=20
Baguhin sa ▼
export PHP_FCGI_CHILDREN=0
- Pagkatapos ng pagbabago, ang pamamahala sa subprocess ng PHP ay isasara sa mod_fcgid mode.
- Ang proseso ng PHP-CGI ay hindi na magbubunga ng mga proseso ng bata, na makakapagtipid ng maraming memorya.
Gayundin, hindi nagtatakda ang VestaCP ng mekanismo ng pagwawakas para sa mga idle na proseso:
- Ang lahat ng bagong executed na proseso ng PHP-CGI ay patuloy na gagamit ng memory hanggang sa ma-reboot ang system.
Para ayusin ito, idagdag lang ang mod_fcgid config file /etc/httpd/conf.d/fcgid.conf
Idagdag ang mga sumusunod na setting sa ▼
FcgidIdleTimeout 120
- Itakda ang Apache na awtomatikong patayin ang mga proseso ng PHP-CGI na idle sa loob ng 2 minuto (120 segundo).
Pagkatapos makumpleto ang pag-setup, i-restart ang serbisyo ng Apache ▼
service httpd restart
Pagkatapos ma-restart ang serbisyo, hindi na ipapakita ang daan-daang proseso ng PHP-CGI na dati nang ipinakita sa HTOP.
Karaniwan, ang isang proseso ng PHP-CGI para sa isang gumagamit ng Vesta CP ay kumokonsumo ng 30 hanggang 40M ng memorya, ganap na kasiya-siyaLinuxmga kinakailangan sa host.
samakatuwid,pagmemerkado gamit ang internetnais ng mga tao na gumawa ng mabutiSEO, napakahalagang i-optimize ang configuration ng Vesta CP at mga template ^_^
Maaari mong tingnan ang mga sumusunod na tutorial sa VestaCP panel ▼
Hope Chen Weiliang Blog ( https://www.chenweiliang.com/ ) ibinahagi ang "Pag-optimize ng VestaCP phpfcgid Template Configuration Process Multiple Memory Exhaustion 500 Errors", na nakakatulong sa iyo.
Maligayang pagdating upang ibahagi ang link ng artikulong ito:https://www.chenweiliang.com/cwl-735.html
Maligayang pagdating sa Telegram channel ng blog ni Chen Weiliang para makuha ang pinakabagong mga update!
📚 Ang gabay na ito ay naglalaman ng malaking halaga, 🌟Ito ay isang bihirang pagkakataon, huwag palampasin ito! ⏰⌛💨
Share and like kung gusto mo!
Ang iyong pagbabahagi at pag-like ay ang aming patuloy na pagganyak!