r->start_sec, r->start_msec

Igor A. Valcov viaprog на gmail.com
Вт Апр 19 13:40:42 MSD 2011


Здравствуйте!

У меня вопрос по внутренностям.

В структуре запроса есть два поля: 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 будет время с момента отправки последнего
поздапроса, а не с момента инициализации самого запроса.

Это так и задумано или нет?

Спасибо.

-- 
Igor A. Valcov


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