Мой сервер - Linode 512, и на нем я запускаю Wordpress MU с 3 веб-сайтами (на них не так много посетителей) и парой приложений NodeJS.
Мне нужно переключиться на Lighttpd, потому что Apache 2 использовал около 59% ОЗУ сервера, а теперь у меня процессы php-cgi занимают около 43,6% ОЗУ сервера:
Как мне уменьшить количество этих процессов? Я почти уверен, что они не все нужны для трафика, который получает этот сервер ...
Я пробовал разрешить только 2 детей, но у меня все еще есть эти 10 ... Это мой раздел fastcgi.server в lighttpd.conf.
fastcgi.server = ( ".php" =>
( "localhost" =>
(
"socket" => "/var/run/lighttpd/php-fastcgi.socket",
"bin-path" => "/usr/bin/php-cgi",
"bin-environment" => (
"PHP_FCGI_CHILDREN" => "2",
"PHP_FCGI_MAX_REQUESTS" => "4000"
)
)
)
)
Что еще я могу сделать, чтобы настроить lighttpd, чтобы использовать меньше оперативной памяти?
Если вы установите bin-path, тогда lighttpd отвечает за порождение процессов fcgi, ограниченных:
"max-procs" => <integer>, # optional - when omitted, default is 4
Переменная среды PHP_FCGI_CHILDREN - это дополнительная подсказка исполняемому файлу php для внутреннего порождения большего количества процессов, вы можете установить ее в ноль.
Вы не указываете max-procs, поэтому есть 4 процесса, порожденные lighty, и каждый из них имеет два дополнительных дочерних элемента - 4 [max-procs] * (1 + 2 [PHP_FCGI_CHILDREN]).
Проверьте lighttpd документация по поводу php-cgi. Кажется, вам может потребоваться установить max-procs
директива для ограничения общего количества дочерних процессов.