Re: Различное время обработки одного и того же запроса на бэкенде и фронтенде.

Maxim Dounin mdounin на mdounin.ru
Ср Фев 10 13:06:46 UTC 2016


Hello!

On Wed, Feb 10, 2016 at 02:59:29AM -0500, nightkeen1 wrote:

> Добрый день.
> 
> Столкнулся с такой особенностью: фронтенд обращается на бэкенд за обьектом,
> бэкенд от дает его из кэша, далее фронтенд отдает контент клиенту, все
> работает, все хорошо. Но почему-то на фронтенде и бэкенде отличается время
> за которое был обработан запрос. Приведу пример из лога:
> 
> Фронтенд: 
> * * [09/Feb/2016:12:58:14 +0000] "GET /hls.ts HTTP/1.1" 200 MISS
> "123.123.123.123" 1651956 "-" "HLS Client" "15.711" "-" "-/-" "1/196861693"
> "0.021" "13.275" "200" RU 
> 
> Бэкенд: 
> * * [09/Feb/2016:12:57:59 +0000] "GET /hls.ts HTTP/1.1" 200 HIT "-" 1651956
> "-" "HLS Client" "0.388" "-" "-/-" "84/238345969" "-" "-" "-" RU
> 
> Ведь по идее, upstream_response_time на фронтенде и request_time на бэкенде
> должны быть равны. А в моем случае это 13.275 и 0.388 соответственно.
> Как считается это время? Действительно ли бэкенд отдал контент быстро? В
> данном случае, кто является узким горлышком?

$upstream_response_time - это время, за которое был получен ответ.  
$request_time - это время, за которое ответ был записан в сокет.

Различия могут быть значительными, если буфера сокетов - большие, 
а канал между фронтендом и бекендом - медленный.

-- 
Maxim Dounin
http://nginx.org/



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