Page 1 of 1

Fcgid процессы сжирают всю память

Posted: Tue Feb 09, 2016 8:43 am
by ChaosHead
Проблема в том, что fcgid процессы сжирают всю память.

Image
Красным помечен переход на fcgid. Скачки - это перезапуски Apache.

Решение на форуме тут нашел: viewtopic.php?f=11&t=4758&p=19918&hilit ... REN#p19918

В fcgi-starter для всех сайтов вписывается настройка PHP_FCGI_CHILDREN=20
Хотя в мануале сказано:
PHP child process management (PHP_FCGI_CHILDREN) should always be disabled with mod_fcgid due to any child processes created by PHP will not be used effectively. (Additionally, the PHP child processes may not be terminated properly.)
That's why so many php-cgi process was created but not close properly.
The file location is in /home/YOUR_USER/web/YOUR_WEB/cgi-bin/fcgi-starter
Т.е. в режиме fcgid нужно поставить PHP_FCGI_CHILDREN=0 иначе дочерние процессы не завершаются!

Руками то я проставлю, но где переопределить это изначально значение, которое распространяется в fcgi-starter файлы?

Re: Где переопределить создаваемые fcgi-starter файлы?

Posted: Tue Feb 09, 2016 8:59 am
by ChaosHead
Сам себе отвечу. Нашел в файле /usr/local/vesta/data/templates/web/apache2/phpfcgid.sh

И пишут, что FcgidMaxRequestsPerProcess должен быть ниже или одинаковым с PHP_FCGI_MAX_REQUESTS, чтобы в момент, когда значение достигает максимума, а процесс работает, у пользователя не появлялась ошибка 500.

Re: Fcgid процессы сжирают всю память

Posted: Fri Aug 26, 2016 6:29 pm
by Kodhi
Благодарю за информацию. Так как впервые использую fcgid, знаний пока явно не хватает в этом вопросе.

Выставил, как выше было указано, PHP_FCGI_CHILDREN=0 и вот результат:

Image

Комментарии, как говорится, излишни.