DProstoy
Новичок
Проблема производительности: php-fcgi перестает обрабатывать запросы
Уважаемые,
Есть проблема с производительностью сервера, с которой бьюсь уже несколько недель и никак не одолею по причине нехватки опыта и знаний. Очень рассчитываю на помощь и дельные советы экспертов.
Есть выделенный сервер. Конфигурация:
CentOS release 5 (Final)
DELL PE1950
2 x Quad Core Xeon L5320
4GB RAM
4x 73GB SAS (2xRAID1)
На сервере установлена связка: nginx + php-fcgi +mysql
В среднем сервер загружен процентов на 20-30%, однако периодически возникают кратковременные всплески в загрузке, что приводит к отказу в обслуживании.
Вот картинки мунина:
Админ говорит:
Уважаемые,
Есть проблема с производительностью сервера, с которой бьюсь уже несколько недель и никак не одолею по причине нехватки опыта и знаний. Очень рассчитываю на помощь и дельные советы экспертов.
Есть выделенный сервер. Конфигурация:
CentOS release 5 (Final)
DELL PE1950
2 x Quad Core Xeon L5320
4GB RAM
4x 73GB SAS (2xRAID1)
На сервере установлена связка: nginx + php-fcgi +mysql
В среднем сервер загружен процентов на 20-30%, однако периодически возникают кратковременные всплески в загрузке, что приводит к отказу в обслуживании.
Вот картинки мунина:

Админ говорит:
Подскажите, в каком направлении копать? Готов предоставить дополнительную информацию по конфигурации и статистику при необходимости.очень похоже, что дело не в узких местах. А непосредственно в php-fcgi. Он просто перестает обрабатывать запросы, все запросы. Пока не перезагрузишь его. Причина пока не понятна такого поведения.
"просто перестает" означает что процессы ничем не занимаются и при этом не обрабатывают новые запросы. Если подключится к любому процессу fast cgi в моменты проблем каким-либо трассировщиком системных вызовов это сразу видно.
mysql тут абсолютно не причем, мунин ,я более чем уверен, рисует Threads_connected, а то, что оно около 50, означает, что у вас нет нагрузки просто и максимально около 50 параллельных запросов обрабатывалось. У вас стоит max_connections 1024, соответственно столько тредов может быть порождено.
nginx и php-fcgi не работают вообще с тредами, есть мастер процесс и есть чайлд процессы.
Мы пробовали менять кол-во чайлдов для php-fcgi от адекватных до довольно сильно задранных, симптомы те-же.