ПРОЕКТЫ 


  АРХИВ 


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



On Sun, 24 Apr 2005, Igor Sysoev wrote:

On Sun, 24 Apr 2005, Alexey Bestciokov wrote:

strace показывает
блоки повторяющщихся строк
epoll_wait(195, {{EPOLLIN, {u32=3084277592, u64=3084277592}}}, 8192, 48197) = 1
gettimeofday({1114260172, 940343}, NULL) = 0

которые время от времени меняются блоками строк
epoll_wait(195, {{EPOLLIN, {u32=3084277672, u64=3084277672}}, {EPOLLERR|0x807a020, {u32=134717480, u64=28969689129000}}}, 8192, 48197) = 2
gettimeofday({1114260172, 940615}, NULL) = 0

полный вывод strace в течении минуты - http://maloletka.ru/dead_nginx.strace.bz2 (630 Кб) со временем они конечно умирают, не не сразу и сервер грузят весьма заметно.
nginx 0.1.12+, linux 2.6.3+ SMP
в конфиге nginx прописано: debug_points  abort;

Правильно ли я понимаю, что
1) используется много логов, около сотни ?
2) используется limit_rate ?
Проблема не в них, просто я хочу убедиться что правильно понял strace.

В логе есть два момента, которые мне не нравятся:

1) сообщения
{EPOLLERR|0x807a020, {u32=134717480, u64=28969689129000}}
очень похоже, что ядро возврщает мусор.

2) одно сообщения
{EPOLLET|0x3fffd820, {u32=3086058770, u64=578613461717714194}},
{EPOLLET|0x37e8b000, {u32=134717480, u64=578607170934251560}}
тоже очень похоже на ядерный мусор.

У меня есть ощущение, что мусор в виде EPOLLERR|0x807a020 и
EPOLLET|0x3fffd820 - это самодеятельность strace, то есть, он неправильно
интерпретирует параметры epoll_wait() больше одного. Если бы ядро
действительно слало такой мусор, то nginx бы часто падал в таких местах.


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




 




Copyright © Lexa Software, 1996-2009.