ПРОЕКТЫ 


  АРХИВ 


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: connect -1 errno 36, sendfile -1 errno 35, L A и затыки сервера



On Mon, Sep 06, 2010 at 02:54:15PM +0400, cronfy wrote:

> Всем добрый день!
> 
> В последнее время на сервере (FreeBSD 7.3, nginx 0.8.20 + apache)
> начали случаться затыки с высоким LA (до 100, в обычном режиме 3-7).
> При этом все воркеры nginx кушают по 20% CPU (в обычном режиме менее
> процента). Idle у сервера почти на нуле, user 10%, system на уровне
> 85% (в обычном режиме user 15%, system 5%). Анализ ktrace'ом показал,
> что во время работы присутствуют такие ошибки:
> 
> # kdump -E -f ktrace.out.ngx | grep errno | grep -v 'stat -1'
>  26333 nginx    0.198233 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    0.499356 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    0.649365 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    0.879417 RET   sendfile -1 errno 35 Resource
> temporarily unavailable
>  26333 nginx    0.983806 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    1.166272 RET   sendfile -1 errno 35 Resource
> temporarily unavailable
>  26333 nginx    1.324759 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    1.456000 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    1.782381 RET   sendfile -1 errno 35 Resource
> temporarily unavailable
>  26333 nginx    1.787654 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    1.790079 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    1.790748 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    1.967399 RET   sendfile -1 errno 35 Resource
> temporarily unavailable
>  26333 nginx    2.013909 RET   connect -1 errno 36 Operation now in progress
>  26333 nginx    2.277270 RET   sendfile -1 errno 35 Resource
> temporarily unavailable
>  26333 nginx    2.447097 RET   sendfile -1 errno 35 Resource
> temporarily unavailable
>  26333 nginx    2.475434 RET   sendfile -1 errno 35 Resource
> temporarily unavailable
> 
> Во время обычной работы они тоже появляются, но хотелось бы понять,
> каких там ресурсов sendfile/connect не хватает.

Это нормально для неблокирующихся соединений.

> Еще посмотрел, между какими операциями проходит много времени (более
> сотой секунды), в основном это от stat/lstat до момента возврата
> данных:
> 
>  26333 nginx    14.469116 CALL  lstat(0x7fffffffdf00,0x7fffffffe300)
>  26333 nginx    14.469128 NAMI  "/home/*****/domains"
>  26333 nginx    14.480034 STRU  struct stat {dev=71, ino=14672900,
> mode=drwxr-xr-x , nlink=6, uid=1665, gid=1666, rdev=58601884,
> atime=1280930234, stime=1283126415, ctime=1283126463,
> birthtime=1258817957, size=512, blksize=16384, blocks=4, flags=0x0 }
> 
>  26333 nginx    14.511089 RET   lstat 0
>  26333 nginx    14.511211 CALL  stat(0x7b6f08,0x800ffbf80)
>  26333 nginx    14.521749 NAMI
> "/home/*****/domains/******/public_html/wp-includes/js/.htaccess"
> 
>  26333 nginx    14.528772 CALL  stat(0x7b6f08,0x800ffbf80)
>  26333 nginx    14.528818 NAMI
> "/home/******/domains/******/public_html/wp-includes/js/tw-sack.js"
>  26333 nginx    14.540026 STRU  struct stat {dev=71, ino=14956822,
> mode=-rw-r--r-- , nlink=1, uid=1665, gid=1666, rdev=59751877,
> atime=1280930314, stime=1246650542, ctime=1280930314,
> birthtime=1246650542, size=4969, blksize=16384, blocks=12, flags=0x0 }
> 
> В штатном режиме работы между stat и возвратом даже тысячной секунды
> не проходит, а тут сотые. Странно, что gstat при этом весь зеленый -
> нагрузку на диск показывает обычную или даже ниже. А бывает даже так:
> 
>  26333 nginx    14.761612 CALL  gettimeofday(0x7fffffffe390,0)
>  26333 nginx    14.818053 RET   gettimeofday 0
> 
> 
> Хотелось бы понять, что это может быть, связано ли с nginx и куда
> можно покопать. что еще для диагностики запустить?

Что показывает "top -S" ?


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

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


 




Copyright © Lexa Software, 1996-2009.