Высокая нагрузка на процессор - с чего бы?

Igor Sysoev is at rambler-co.ru
Sat May 21 10:34:17 MSD 2005


On Sat, 21 May 2005, GribUser wrote:

> Интересное наблюдение... Раньше у меня акселератором был squid и он в
> плане загрузки процессоров вообще не светился. Страшно было смотреть на
> MySQL в top, но о squid я вообще вспоминал только потому, что он память
> терял, а у меня свап был не сильно большой.
>
> Теперь же стоит nginx и он (обычно один из worker processes, остальные
> далеко внизу, но вот сейчас сразу три переплюнуть MySQL умудрились -
> ужасть!) устойчиво занимает первое место в top. Я могу понять, что он
> обогнал httpd (хотя squid httpd обгонял у меня нечасто, у меня gzip в
> mod_perl делается, и сейчас, кстати, еще), но каким макаром он
> умудряется обогнать mysql, ворочающий довольно приличных размеров
> статистику и раньше занимавший ~90%+ проессорного времени, оставляя
> сквиду 3-5%?
>
> Куда надо смотреть, чтобы понять, что происходит? Может, дело в том, что
> squid самостоятельно кэшировал в памяти статику, единожды утянув с
> бэкэнда, и раздавал клиентам из своего кэша, а nginx ее тягает с диска и
> перекладывает оптимизацию на ОС со столь плачевным результатом? Похоже
> на то, что kernel и user поровну считают или kernel даже больше во время
> мега-работы nginx, хотя во время работы MySQL в kernel вообще ничего не
> считается, просто 0%, походу, все под юзером. Есть идея, что ему очень
> срывает башню от 404-й ошибки, когда он сам не может найти страницу, но
> со 100% вероятностью не скажу, еще надо наблюдать. Иногда, редко, его
> клинит так, что он под 100% вообще процессор занимает при средней
> загрузке в районе ~10%, но я что-то не уловил закономерности, хотя раз
> его точно заклинило, когда была серия из ~20-и запросов несуществующего
> файла (gif) в nginx.
>
> Я, вообще, планирую плотно понаблюдать за nginx недельку, а потом опять
> попробовать squid. Железо и ось я тоже поменял, так что всякие могут
> быть объяснения. Но хочется и понять же, откуда могут ноги расти у такой
> странности, в теорию въехать. Вот конфиг. Работает на Solaris 10, два
> камня+HT=4 псевдо-камня, кэш 2MB. 100% трафика с прокси идет уже пожатым
> GZIP, там есть пара статических сайтов генерящих что-то типа 3% общего
> трафика, для них я общий gzip включил.

Можно привести вывод top в такие моменты ?

Можно попробовать поставить

events {
     use   /dev/poll;
     ...
}

хотя для Соляриса это должно быть по умолчанию.


Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list