ПРОЕКТЫ 


  АРХИВ 


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 status: reading 100-200, writing 1-5. Как побороть?


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: nginx status: reading 100-200, writing 1-5. Как побороть?
  • From: "mikhal123" <nginx-forum@xxxxxxxx>
  • Date: Wed, 19 Sep 2012 04:56:10 -0400
  • Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tigger.jlkhosting.com; s=x; h=Date:Sender:From:References:In-Reply-To:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=fKilE5L0JPsHT8m4UVy+gQDqCf/n9PfxQutHO9z+An8=; b=o8j2Hkz/SmY2EnkHLjwHLjGQEsWk1C3QqR3zgy8IyKpfNsQ7n0cobTtSvDh8O1n9bX9GAiKmd0DIvf1yhMXEdY9SnjaqQ+kH0XMjmxucwmr2rrPfeDWdLj15ny5VplZ3;
  • In-reply-to: <201209191223.42707.ne@vbart.ru>
  • References: <201209191223.42707.ne@vbart.ru>

> > > > Ну и как итог - все это является следствием "нормального"
> поведения
> > > > клиентских браузеров посетителей сайта, и с серверной стороны
> это
> > > > никак не побороть?
> > > 
> > > Стоит посмотреть в сторону accept-фильтров/TCP_DEFER_ACCEPT.
> > > http://nginx.org/r/listen/ru
> > 
> > счастливым обладателям freebsd может быть и стоит, но у меня debian
> где это
> > не поддерживается...
> > 
> 
> % uname  
> Linux
> % man tcp
> 
>        TCP_DEFER_ACCEPT (since Linux 2.4)
>               Allow a listener to be awakened only when data  arrives 
> on  the
>               socket.   Takes  an  integer value (seconds), this can
> bound the
>               maximum number of attempts TCP will make to complete the
> connec?
>               tion.   This  option  should  not be used in code
> intended to be
>               portable.
> 

если бы все было так просто....
подозреваю, что разработчики хрома считают себя весьма хитрыми людьми и
делают против этого какой-то трюк с фиктивной отсылкой данных:

+listen                         80 default_server backlog=1024 sndbuf=512k 
deferred;

после этого в логах все еще интереснее:

2012/09/19 11:53:22 [debug] 27380#0: *421 accept: 79.164.125.238 fd:85
2012/09/19 11:53:22 [debug] 27380#0: *421 post event 00007FD536406738
2012/09/19 11:53:22 [debug] 27380#0: *421 delete posted event
00007FD536406738
2012/09/19 11:53:22 [debug] 27380#0: *421 malloc: 0000000000830860:1296
2012/09/19 11:53:22 [debug] 27380#0: *421 posix_memalign:
0000000000830D80:256 @16
2012/09/19 11:53:22 [debug] 27380#0: *421 malloc: 0000000000884870:16384
2012/09/19 11:53:22 [debug] 27380#0: *421 posix_memalign:
0000000000830E90:4096 @16
2012/09/19 11:53:22 [debug] 27380#0: *421 http process request line
2012/09/19 11:53:22 [debug] 27380#0: *421 recv: fd:85 -1 of 16384
2012/09/19 11:53:22 [debug] 27380#0: *421 recv() not ready (11: Resource
temporarily unavailable)
2012/09/19 11:53:22 [debug] 27380#0: *421 event timer add: 85:
3000:1348041205251
2012/09/19 11:53:22 [debug] 27380#0: *421 epoll add event: fd:85 op:1
ev:80000001

и затем через 3 секунды

2012/09/19 11:53:25 [debug] 27380#0: *421 event timer del: 85:
1348041205251
2012/09/19 11:53:25 [debug] 27380#0: *421 http process request line
2012/09/19 11:53:25 [info] 27380#0: *421 client timed out (110: Connection
timed out) while reading client request line, client: 79.164.125.238,
server: coolsite.ru
2012/09/19 11:53:25 [debug] 27380#0: *421 http request count:1 blk:0
2012/09/19 11:53:25 [debug] 27380#0: *421 http close request
2012/09/19 11:53:25 [debug] 27380#0: *421 http log handler
2012/09/19 11:53:25 [debug] 27380#0: *421 free: 0000000000830E90, unused:
2208
2012/09/19 11:53:25 [debug] 27380#0: *421 close http connection: 85
2012/09/19 11:53:25 [debug] 27380#0: *421 reusable connection: 0
2012/09/19 11:53:25 [debug] 27380#0: *421 free: 0000000000884870
2012/09/19 11:53:25 [debug] 27380#0: *421 free: 0000000000830860
2012/09/19 11:53:25 [debug] 27380#0: *421 free: 0000000000830750, unused: 0
2012/09/19 11:53:25 [debug] 27380#0: *421 free: 0000000000830D80, unused:
112

то есть как я понимаю запрос шлется не целиком (может вообще 1 байт), затем
соединение уходит в состояние ожидания и потом все равно также отваливается
только по таймауту. в freebsd accf_http наверное помог бы (и то может они и
для него чего-то делают), а в linux получается что все, финита

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,230818,230858#msg-230858

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


 




Copyright © Lexa Software, 1996-2009.