Оптимизиране на VestaCP phpfcgid шаблон за конфигуриране на процеса изчерпване на много памет 500 грешки

VestaCP След като WEB услугата избере шаблона "phpfcgid", голям брой PHP-CGI процеси причиняват бързо изчерпване на паметта:

  • На практика ми липсваше памет за няколко часа след рестартиране на сървъра.
  • Предишният неактивен PHP-CGI процес не е унищожен и един процес изпълнява близо 1 подпроцеса, като консумира най-малко 20M памет.

Използва се в SSH htop команда (необходима е инсталация), можете да видите това състояние ▼

След като WEB услугата на VestaCP избере шаблона "phpfcgid", голям брой PHP-CGI процеси причиняват бързо изчерпване на паметта.

Ако получите съобщение за грешка „-bash: htop: командата не е намерена“, когато използвате командата htop, моля, вижте този урок за решението ▼

Голям брой PHP-CGI процеси причиняват бързо изчерпване на паметта.Проблемът е във VestaCPCentOSВ шаблона phpfcgid се използва неоптимизирана конфигурация.

  • VestaCP в шаблона phpfcgid задайте 1 PHP-CGI процес за изпълнение на до 20 дъщерни процеса.

Вижте /usr/local/vesta/data/templates/web/httpd/phpfcgid.sh Ред 13 от файла:

export PHP_FCGI_CHILDREN=20

Подобна настройка обаче нарушава предупреждението на Apache в документацията за управление на PHP подпроцеси:

Управление на дъщерен процес на PHP (PHP_FCGI_CHILDREN) винаги трябва да бъде деактивиран с mod_fcgid, който ще насочва само една заявка наведнъж към процесите на приложението, които е породил; по този начин всички дъщерни процеси, създадени от PHP, няма да бъдат използвани ефективно. (Освен това, дъщерните процеси на PHP може да не бъдат прекратени правилно .) По подразбиране и с настройка на променливата на средата PHP_FCGI_CHILDREN=0, управлението на PHP дъщерен процес е деактивирано.

Тъй като в модула mod_fcgid на Apache 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 автоматично да убива PHP-CGI процеси, които са неактивни за 2 минути (120 секунди).

След като настройката приключи, рестартирайте услугата Apache ▼

service httpd restart

След като услугата бъде рестартирана, стотиците PHP-CGI процеси, които преди това са били показвани в HTOP, вече няма да се показват.

Обикновено един PHP-CGI процес за един потребител на Vesta CP консумира 30 до 40M памет, което напълно удовлетворяваLinuxизисквания на хоста.

因此,网络 营销хората искат да се справят добреSEO, много е важно да се оптимизира конфигурацията на Vesta CP и шаблоните ^_^

Можете да разгледате следните уроци в панела VestaCP ▼

Как да конфигурирам процеса Monit на панела Vesta CP на системата CentOS 7?

По-рано блогът на Chen Weiliang сподели урок за инсталиране и конфигуриране на Monit на CentOS 6 ▼

Конфигурацията на програмата за наблюдение Monit в CentOS 7 обаче е малко по-различна от тази в CentOS 6 и не е съвсем същата.ако ти……

Как да конфигурирам процеса Monit на панела Vesta CP на системата CentOS 7?4-ти

Блог на Hope Chen Weiliang ( https://www.chenweiliang.com/ ) сподели „Оптимизиране на VestaCP phpfcgid Template Configuration Process Multiple Memory Exhaustion 500 Errors“, което е полезно за вас.

Добре дошли да споделите връзката към тази статия:https://www.chenweiliang.com/cwl-735.html

Добре дошли в канала на Telegram в блога на Chen Weiliang, за да получите най-новите актуализации!

🔔 Бъдете първите, получили ценното „Ръководство за използване на инструмента за изкуствен интелект за маркетинг на съдържание ChatGPT“ в горната директория на канала! 🌟
📚 Това ръководство съдържа огромна стойност, 🌟Това е рядка възможност, не я пропускайте! ⏰⌛💨
Споделете и харесайте, ако ви харесва!
Вашите споделяния и харесвания са нашата постоянна мотивация!

 

发表 评论

Вашият имейл адрес няма да бъде публикуван. Използват се задължителните полета * Етикет

превъртете до върха