Cокет в FIN_WAIT_1

Igor Sysoev is at rambler-co.ru
Fri Oct 5 21:31:48 MSD 2007


On Fri, Oct 05, 2007 at 07:18:45PM +0400, Fyodor Ustinov wrote:

> Igor Sysoev пишет:
> >On Fri, Oct 05, 2007 at 05:30:46PM +0300, MZ wrote:
> >
> >  
> >>Ух ты, а я думал только ядро патчить поможет
> >>А где опция появилась/описана ?
> >>    
> >
> >Появилась давно, поэтому и не описано: все новые директивы описываются
> >по мере появления.
> >
> >Если соединение закрывается по таймауту, то nginx закрывает соединение
> >с включённой опцией SO_LINGER и временем, равным нулю. В результате
> >ядро сразу же закрывает сокет, не переходя в FIN_WAIT_1/2 и TIME_WAIT.
> >Все связанные с сокетом буфера освобождаются, а клиенту посылается RST.
> >  
> Странно. В конфиге параметр включил, nginx перегрузил. Тем не менее:
> netstat -an | grep -ci wait_2
> 910
> 
> netstat -an | grep -ci wait_1
> 3165
> 
> netstat -an | grep -ci time_wait
> 456

А было сколько ?

Вообще, полностью избавлятся от FIN_WAIT_1/2 нельзя, нужно избавлятся
от бесполезных FIN_WAIT_1/2. У меня есть, например, такое:

netstat -an | grep -c ESTABLISHED
22835
netstat -an | grep -c TIME_WAIT
9243
netstat -an | grep -c WAIT_1
2468
netstat -an | grep -c WAIT_2
2766


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





More information about the nginx-ru mailing list