ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Nginx reload, выедает CPU



Hello!

On Wed, Aug 28, 2013 at 09:22:14PM +0300, Serge Negodyuck wrote:

> 28 августа 2013 г., 21:05 пользователь Maxim Dounin
> <mdounin@xxxxxxxxxx> написал:
> > Hello!
> >
> > On Wed, Aug 28, 2013 at 08:39:38PM +0300, Serge Negodyuck wrote:
> >
> >> 28 августа 2013 г., 18:41 пользователь Maxim Dounin
> >> <mdounin@xxxxxxxxxx> написал:
> >>
> >> >
> >> > Ну таки да, timer_resolution 1ms + worker_connections 32000
> >> > поведение объясняют.  Простейшее решение - выпилить из конфига
> >> > timer_resolution и/или поднять до каких-нибудь более разумных
> >> > 100ms.
> >> >
> >> Если бы  timer_resolution не влиял на $upstream_response_time (который
> >> нужен в логах, с довольно большой точностью, чтобы иметь статистику по
> >> бекендам), то да.
> >
> > Таки он и не влияет - timer_resolution предназначен для
> > загрубления точности, а не улучшения.
> >
> > Если нужна высокая точность - просто уберите директиву
> > timer_resolution из конфига (или поставьте в 0, что суть то же
> > самое).
> 
> Да уж, несколько дней убил, а всё по незнанию того, что можно просто
> убрать  timer_resolution.
> Зато немного разобрался в том, как nginx обрабатывает запросы.

В первую очередь - не надо было его ставить.  В документации как бы 
явно написано:

: Уменьшает разрешение таймеров времени в рабочих процессах, за счёт чего
: уменьшается число системных вызовов gettimeofday(). По умолчанию 
gettimeofday()
: вызывается после каждой операции получения событий из ядра. При уменьшении
: разрешения gettimeofday() вызывается только один раз за указанный интервал.

http://nginx.org/r/timer_resolution/ru

> P.S. Хотя, несколько тысяч живущих вебсокетов, каждый из которых, раз
> в секунду обновляет данные (и создает при этом kevent, да?) - вполне
> возможная ситуация.

Возможная, но маловероятная.  Кроме того, события от реальных 
соединений имеют тенденцию склеиваться между собой при увеличении 
нагрузки, в отличии от таймеров.

-- 
Maxim Dounin
http://nginx.org/en/donation.html

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.