VestaCP После того, как веб-сервис выбирает шаблон «phpfcgid», большое количество процессов PHP-CGI приводит к быстрому исчерпанию памяти:
- У меня в основном не хватало памяти в течение нескольких часов после перезапуска сервера.
- Ранее бездействующий процесс PHP-CGI не уничтожается, и один процесс выполняет около 1 подпроцессов, потребляющих не менее 20 МБ памяти.
Используется в SSH htop
команда (требуется установка), вы можете просмотреть этот статус ▼
Если вы получаете сообщение об ошибке «-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 в CentOS 6 ▼
Однако конфигурация программы мониторинга Monit в CentOS 7 несколько отличается от таковой в CentOS 6, и это не совсем то же самое.если вы……Блог Хоуп Чен Вейлян ( https://www.chenweiliang.com/ ) поделился «Оптимизация процесса настройки шаблона VestaCP phpfcgid, несколько ошибок исчерпания памяти 500», который будет полезен для вас.
Добро пожаловать, чтобы поделиться ссылкой на эту статью:https://www.chenweiliang.com/cwl-735.html
Добро пожаловать на Telegram-канал блога Chen Weiliang, чтобы быть в курсе последних обновлений!
📚 Это руководство содержит огромную ценность. 🌟Это редкая возможность, не упустите ее! ⏰⌛💨
Делитесь и ставьте лайк, если хотите!
Ваш обмен и лайки - наша постоянная мотивация!