Re: Nginx не отвечает на запросы

Evgeniy Berdnikov bgx на protva.ru
Вт Сен 20 07:32:01 UTC 2016


On Mon, Sep 19, 2016 at 06:58:16PM -0400, Mikanoshi wrote:
> Maxim Dounin Wrote:
> -------------------------------------------------------
> > Всё это выглядит как ошибка ядра.  Во FreeBSD 11 был существенно 
> > переделан sendfile() в части работы с флагом SF_NODISKIO - 
> > возможно, имеет смысл попробовать выключить sendfile и/или aio.
> 
> Всё равно ошибка:
> 2016/09/20 03:48:14 [crit] 16449#0: close() socket 44 failed (9: Bad file
> descriptor)
> 2016/09/20 03:49:02 [info] 16449#0: kevent() failed (4: Interrupted system
> call)
> 
> 44 сокет не показывается в lsof на момент зависания.

 Значение errno=EBADF означает "сокет 44 не существует". После такой
 записи в лог номер 44 может получить сокет, открытый позже.
 Тогда новый сокет может попасть в выдачу lsof и быть ошибочно отождествлён
 с тем сокетом, который не удалось закрыть рабочему процессу.

> Cокеты эти для соединений используется:
> nginx     26627      www   44u    IPv4 0xfffff80025951410                0t0
>     TCP domain.ru:http->176-106-199-5.point.lviv.ua:28084 (ESTABLISHED)

 Здесь может быть повторное использование номера 44 для нового сокета.
-- 
 Eugene Berdnikov



Подробная информация о списке рассылки nginx-ru