r->start_sec, r->start_msec
Igor Sysoev
igor на sysoev.ru
Вт Апр 19 15:04:01 MSD 2011
On Tue, Apr 19, 2011 at 01:40:42PM +0400, Igor A. Valcov wrote:
> Здравствуйте!
>
> У меня вопрос по внутренностям.
>
> В структуре запроса есть два поля: r->start_sec и r->start_msec, в
> которых хранится время начала запроса.
> Инициализируются они в http/ngx_http_request.c
>
> ngx_http_init_request(...)
> ...
> tp = ngx_timeofday();
> r->start_sec = tp->sec;
> r->start_msec = tp->msec;
>
> Далее, при отправке подзапроса в http/ngx_http_core_module.c
>
> ngx_http_subrequest(...)
> ...
> tp = ngx_timeofday();
> r->start_sec = tp->sec;
> r->start_msec = tp->msec;
>
> тут r - основной запрос, а поздапрос - sr
> Получается, что при отправке подзапроса, сбрасывается время основного
> запроса на момент отправки подзапроса, а время старта подзапроса не
> устанавливается.
>
> Т.е. в случае, если запрос отправлял подзапросы, то в
> start_sec/start_msec будет время с момента отправки последнего
> поздапроса, а не с момента инициализации самого запроса.
>
> Это так и задумано или нет?
Нет, это ошибка, должно быть sr. Спасибо.
--
Igor Sysoev
Подробная информация о списке рассылки nginx-ru