Недавно я загрузил на свой сервер некоторые изменения, которые увеличивают количество вызовов AJAX, выполняемых на сервере.
Приложение "Стойкость" сильно уменьшилось. Веб-сервер - это nginx с модулем php5-fpm
Если я запускаю команду «top» на консоли сервера, я вижу:
Конфигурации: (только значимая часть)
/etc/nginx/nginx.conf
worker_processes 8;
events{
worker_connections 1024;
multi_accept off;
}
http{
sendfile on;
keepalive_timeout 30;
tcp_nodelay off;
client_max_body_size 64m;
gzip on;
}
/etc/php5/fpm/pool.d/www.conf
pm = dynamic
pm.max_children = 10
pm.start_servers = 3
pm.min_spare_servers = 2
pm.max_spare_servers = 4
pm.process_idle_timeout = 5s;
pm.max_requests = 400
Характеристики сервера:
Что вы думаете об этой проблеме? Это вызвано неоптимальной конфигурацией сервера? Какую конфигурацию вы предлагаете для этого сервера?
С 24 ГБ ОЗУ вам следует увеличить эти настройки.
pm.max_children
pm.start_servers
pm.min_spare_servers
pm.max_spare_servers
к чему-то более разумному для вашего сервера. Ваши текущие настройки находятся в некотором роде настройки «дома приятно поиграть».
Например, см. «Настройка PHP5-FPM». Вот и сделай математику. Я предполагаю начать с умножения чисел на 10 или около того.
В любом случае, ваше PHP-приложение все еще может быть линейно привязано к процессору, а не к рабочему, и настройка не поможет.