Я хочу перевести свой сервер приложений с модуля MPM prefork по умолчанию на рабочий MPM. Конфигурация моего сервера
ОС - CentOS 6 Apache - Apache / 2.2.15 (Unix) PHP 5.4.35 (fpm-fcgi) ЦП - 4 RAM - 8 ГБ
Я рассматриваю только 60% доступной оперативной памяти, то есть 5 ГБ. Мой процесс apache занимает в среднем 6 МБ, а php-fpm - 25 МБ, поэтому, исходя из потребления оперативной памяти, у меня есть следующие конфигурации
Конфигурация рабочего:
Тайм-аут 60 KeepAlive на MaxKeepAliveRequests 100 KeepAliveTimeout 15
ServerLimit 16 StartServers 4 MaxClients 400 MinSpareThreads 25 MaxSpareThreads 75 ThreadsPerChild 25 MaxRequestsPerChild 0
Конфигурация PHP-FPM
pm.max_children = 100 вечера.start_servers = 22:00. min_spare_servers = 17:00. max_spare_servers = 15:00. max_requests = 500
Emergency_restart_threshold = 10 Emergency_restart_interval = 1 мин process_control_timeout = 5 с
Когда я добавляю эту машину в clusture, средняя нагрузка достигает 100 и ведет себя очень странно.
Любая помощь или предложение были бы очень признательны, если я делаю неправильную конфигурацию.
Спасибо
Вероятно, это не тот ответ, который вы ищете, но все же. Если вас действительно беспокоит эффективное потребление памяти и производительность, вам действительно стоит подумать о переходе на nginx + php-fpm, поскольку вы уже используете последний. Вместо перехода на другую модель процесса apache.
Apache потребляет много памяти и работает медленно. По крайней мере, дайте nginx шанс.