new nginx resolver

Igor Sysoev is at rambler-co.ru
Thu Feb 10 23:12:54 MSK 2005


On Thu, 10 Feb 2005, Dmitry Kondratyev wrote:

> Dmitry Kondratyev wrote:
>
>>>>> Это не тред-сейфовый резолвер, а резолвер, который не блокируется.
>>>> 
>>>> 
>>>>     А по мне так пущай бы и блокировался. Мой днс всё равно быстро 
>>>> отплёвывает адреса для проксирования. Если можно это уже сейчас сделать 
>>>> опциональным, то было бы замечательно. Ну а если нет, то подождём. :-)
>>> 
>>> 
>>> Сейчас можно сделать заглушку, которая бы вызывала системный
>>> gethostbyname_r(). Что делать с несколькими адресами - перебирать
>>> их по очереди в случае неудачи ?
>> 
>> 
>>     Наверно да. В моём случае я всегда возвращаю только один адрес, но 
>> можно возвращать и несколько с рассчётом на то, что кто-то из них не 
>> ответит. :-)
>
> 	Судя по описанию 0.1.18 там этого пока нет? Тогда есть пожелание на 
> будущее: в случае, если ни одной записи типа A днс не вернул, чтобы была 
> возможность или сделать редирект на какую-нибудь страницу, или вернуть 502, 
> например, и обработать его с помощью error_page. В случае текущей схемы 
> nginx->apache->backend у меня такое получается сделать: своё описание ошибки 
> клиенту в итоге отдаёт промежуточный апач. В моём случае такое происходит, 
> если нет живых и/или незагруженных бэкендов. Клиент в итоге вместо 
> длительного ожидания таймаута сразу получает отлуп с просьбой прийти 
> попозжее, что экономит ресурсы и приводит к тому, что бэкенды разгружаются 
> быстрей. :-)

Да, в 0.1.18 нету.
В случае, если не будет адреса, то возвращается ошибка 502, и её можно
перенаправить с помощью error_page.


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





More information about the nginx-ru mailing list