什么是nginx的$request_time,为什么它比php-fpm执行时间多得多?

背景:我的项目的目标是创建一个响应速度非常快的网站.页面很少,其中许多只是302重定向.

Nginx中,我正在记录here $request_time.

PHP中,我正在记录请求开始时的微缩时间,并在它退出之前.

PHP-fpm(PHP 5.3.27)和Nginx(1.4.4)在同一台机器上运行,没有数据库(只是写入Beanstalkd队列),没有复杂的Nginx配置.

问题:PHP执行时间与Nginx的$request_time之间存在巨大差异. $request_time通常是0.5秒,但在几个小时内它平均更像是3秒. PHP的执行时间总是在0.008秒到0.02秒之间(使用PhalconPHP).

问题:为什么会出现如此大的差异?也许我不完全理解$request_time是什么,或者我的网络服务器可能有一些有问题的配置?我很乐意提供有关环境的更多信息.

最佳答案
$request_time是从发送的第一个字节到关闭所有内容并完成日志记录的时间.如果你看一下你正在记录的Nginx日志和microtime,它们在起始时间方面有多接近?对于request_time接近3秒的那些,并且PHP执行时间是0.02秒,如果你推断请求开始时间并将其与PHP内的microtime进行比较,它们是否关闭,或者Nginx需要等待一秒或2(也许是一个PHP进程释放等…).记录$upstream_response_time以查看比较结果可能会很有趣.

相关文章

Nginx (engine x) 是一个高性能的HTTP和反向代理服务,也是一...
本地项目配置 1 复制 luffy/settings/dev.py为prop.py 修改l...
nginx不仅可以隐藏版本信息,还支持自定义web服务器信息 先看...
一 、此次漏洞分析 1 nginx HTTP/2漏洞 [nginx-announce] ng...
###进入nginx 目录cd /usr/local/nginx###递归显示 2 级目录...
在cmd命令窗口输入下面命令进行查看 tasklist /fi "ima...