nginx-request_time和upstream_response_time

Posted junle

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了nginx-request_time和upstream_response_time相关的知识,希望对你有一定的参考价值。

1、request_time

官网描述:request processing time in seconds with a milliseconds resolution; time elapsed between the first bytes were read from the client and the log write after the last bytes were sent to the client 。
指的就是从接受用户请求的第一个字节到发送完响应数据的时间,即包括接收请求数据时间、程序响应时间、输出
响应数据时间。

2、upstream_response_time

官网描述:keeps times of responses obtained from upstream servers; times are kept in seconds with a milliseconds resolution. Several response times are separated by commas and colons like addresses in the $upstream_addr variable

是指从nginx向后端(php-cgi)建立连接开始到接受完数据然后关闭连接为止的时间。

从上面的描述可以看出,$request_time肯定比$upstream_response_time值大,特别是使用POST方式传递参数时,因为Nginx会把request body缓存住,接受完毕后才会把数据一起发给后端。所以如果用户网络较差,或者传递数据较大时,$request_time会比$upstream_response_time大很多。

所以如果使用nginx的accesslog查看php程序中哪些接口比较慢的话,记得在log_format中加入$upstream_response_time。



以上是关于nginx-request_time和upstream_response_time的主要内容,如果未能解决你的问题,请参考以下文章

xdebug 一直报错 upstream timed out (110: Connection timed out) while reading response header from upstre

12.2备库rman使用delete删除归档日志报错RMAN-08137: WARNING: archived log not deleted, needed for standby or upstr

git pull 报错

kong

Git给分支改名

错误:sonar.sources的值无效