Оптимизация процесса настройки шаблона VestaCP phpfcgid при исчерпании нескольких памяти 500 ошибок

VestaCP После того, как веб-сервис выбирает шаблон «phpfcgid», большое количество процессов PHP-CGI приводит к быстрому исчерпанию памяти:

  • У меня в основном не хватало памяти в течение нескольких часов после перезапуска сервера.
  • Ранее бездействующий процесс PHP-CGI не уничтожается, и один процесс выполняет около 1 подпроцессов, потребляющих не менее 20 МБ памяти.

Используется в SSH htop команда (требуется установка), вы можете просмотреть этот статус ▼

После того, как веб-служба 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 отключено.

Поскольку в модуле 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 для автоматического уничтожения процессов PHP-CGI, которые простаивают в течение 2 минут (120 секунд).

После завершения настройки перезапустите службу Apache ▼

service httpd restart

После перезапуска службы сотни процессов PHP-CGI, которые ранее отображались в HTOP, больше не будут отображаться.

Как правило, один процесс PHP-CGI для одного пользователя Vesta CP потребляет от 30 до 40 МБ памяти, что полностью удовлетворяет требованиям.Linuxтребования хозяина.

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

Вы можете ознакомиться со следующими туториалами на панели VestaCP ▼

Как настроить процесс Monit на панели Vesta CP системы CentOS 7?

Ранее в блоге Чена Вейляна было опубликовано руководство по установке и настройке Monit в CentOS 6 ▼

Однако конфигурация программы мониторинга Monit в CentOS 7 несколько отличается от таковой в CentOS 6, и это не совсем то же самое.если вы……

Как настроить процесс Monit на панели Vesta CP системы CentOS 7?Лист 4

Блог Хоуп Чен Вейлян ( https://www.chenweiliang.com/ ) поделился «Оптимизация процесса настройки шаблона VestaCP phpfcgid, несколько ошибок исчерпания памяти 500», который будет полезен для вас.

Добро пожаловать, чтобы поделиться ссылкой на эту статью:https://www.chenweiliang.com/cwl-735.html

Добро пожаловать на Telegram-канал блога Chen Weiliang, чтобы быть в курсе последних обновлений!

🔔 Будьте первым, кто получит ценное «Руководство по использованию инструмента искусственного интеллекта для контент-маркетинга ChatGPT» в верхнем каталоге канала! 🌟
📚 Это руководство содержит огромную ценность. 🌟Это редкая возможность, не упустите ее! ⏰⌛💨
Делитесь и ставьте лайк, если хотите!
Ваш обмен и лайки - наша постоянная мотивация!

 

发表 评论

Ваш электронный адрес не будет опубликован. 必填 项 已 用 * 标注

滚动 到 顶部