Re: Нулевой upstream_response_time

Igor Sysoev is at rambler-co.ru
Wed Nov 16 17:26:06 MSK 2005


On Tue, 15 Nov 2005, Alexey Polyakov wrote:

> А как тогда может получаться ноль? Если это время - заведомо больше
> десяти миллисекунд?

Как тестировалось в ab - в один поток, или несколько ?

> On 11/14/05, Igor Sysoev <is at rambler-co.ru> wrote:
>> On Mon, 14 Nov 2005, Alexey Polyakov wrote:
>>
>>> То есть (2)-(1) - это время, через которое бекенд начал отвечать?
>>> Я думал, что это время, которое бекенд затратил на передачу целиком ответа.
>>
>> Нет, (2) - это время когда nginx закрыл соединение с бэкендом.
>> Между (1) и (2) должен быть как минимум один вызов kevent() и gettimeofday().
>>
>>> On 11/14/05, Igor Sysoev <is at rambler-co.ru> wrote:
>>>> On Sun, 13 Nov 2005, Alexey Polyakov wrote:
>>>>
>>>>> Наблюдаю у себя такую странность:
>>>>> сайт индексируется htdig'ом, который валит подряд много запросов к
>>>>> страницам, бекенд - Апач/PHP.
>>>>> Для многих из них в лог пишется 0.000 в качестве значения
>>>>> upstream_response_time.
>>>>> Реально же, при тесте например с помощью ab, processing time на таких
>>>>> страницах никогда не меньше 10-12мс.
>>>>> ОС - FreeBSD 5.4, nginx - 0.3.7.
>>>>> С чем подобное поведение может быть связано?
>>>>
>>>> $upstream_response_time считается так:
>>>>
>>>> 1) kevent() возвращает новые события, nginx запоминает время (1) в ms.
>>>> 2) nginx принимает соединение, читает запрос, определяет, что запрос
>>>>    уходит к прокси, запоминает текущее время (1).
>>>> 3) nginx соединяется с бэкендом, если это localhost, то соединение
>>>>    устанавливается сразу же. Если нет, то факт соединения возвращается
>>>>    через kevent().
>>>> 4) nginx передаёт запрос и ждёт ответ.
>>>> 5) наличие ответа возвращается через kevent(), nginx опять запоминает
>>>>    время (2).
>>>> 6) если овет передан полностью, то $upstream_response_time равен (2)-(1).
>>>>
>>>> Как видно, nginx не пытается измерить время точно.
>>
>>
>> Игорь Сысоев
>> http://sysoev.ru
>>
>>
>
>
> --
> Alexey Polyakov
>
>
>

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





More information about the nginx-ru mailing list