Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ошибка в nginx ?
On Wednesday, July 9, 2008 at 0:50:09, Andrei Nigmatulin wrote:
>> если я все правильно понимаю - в той ситуации когда у backend`а
>> уже закончился backlog - nginx в любом случае вернет ошибку 502 ?
AN> Да.
>> а какой при этом будет возвращен код ошибки из ядра,
>> EINPROGRESS или EAGAIN - никакой особой роли не играет,
>> и эту разницу можно будеть увидеть только по debug-логу?
AN> Да. Тут в общем-то самое полезное, что может сделать nginx -
AN> сообщить о том, что ошибка произошла в момент подключения.
AN> Так как из "(134: Transport endpoint is not connected)
AN> while sending request to upstream" сложно понять,
AN> что на самом деле произошло.
возможно это такой подход - не заниматься интерпретацией сообщений
об ошибках, а только буквально сообщать в лог о том, что произошло.
аналогичный случай с другой ошибкой - http://sysoev.ru/nginx/docs/faq.html
>> возвращаясь к тому исходному сообщению
>> http://groups.google.com/group/highload-php-ru/msg/a5a2883173f56f5d
>> - получается, что тут нет ошибки в ядре linux, которую можно исправить
>> и получить лучший результат (например, меньше ошибок 502 на клиенте) ?
AN> Можно увеличить somaxconn. По опыту, многим помогает.
это наверное единственный способ, если есть "всплески" запросов,
и задержка с отдачей ответа будет лучше, чем возврат 502 ошибки.
AN> Или перейти на tcp.
а чем в такой ситуации может помочь переход на tcp?
в пределах localhost`а tcp ведь работает медленнее,
чем unix sockets - будет только больше 502 ошибок?
AN> Или отказаться от linux.
зачем? при переполнении backlog`а будет точно такое же
поведение nginx`а и на других операционных системах...
AN> Или каким-то образом ускорить выполнение
AN> php скриптов, чтобы backlog не переполнялся.
или добавить еще backend`ов, потому что существующие
уже не справляются с нагрузкой, или настроить защиту
от DDOS-атак, если часть запросов приходит от ботов.
--
Best regards,
Gena
|