php-fpm访问日志请求时间和xdebug时间不匹配。
为什么xdebug性能分析显示100ms的请求和php-fpm访问日志显示700ms + 7x甚至更多的差异?
xdebug是否丢失/正在跳过某些东西或者fpm是否在实际的php处理之间做了什么?
Xdebug记录自动加载/包含/要求时间?数据库连接等?
有没有办法深入了解php-fpm登录access.log的时间?
答案 0 :(得分:1)
我怀疑php-fpm会记录在处理结束时设置/拆除实际php文件加载和清理所需的时间。在调用设置之后,Xdebug只能变成'自我意识',并且在php执行完成后php-fpm开始清理时fawns out。我认为。我没有php-fpm(来自扩展的apache日志)观察到相同的内容。
来自apache:
192.168.1.54 - - [19/Aug/2016:10:35:17 -0400] "POST /idm/feed/do.php HTTP/1.1" 200 2186 0/128868 I:252 O:2434
来自php进程的:
2016-08-19T10:35:17-04:00 -api.idm.feed.Servlet DEBUG /idm/feed[detail] processed in 12.8 ms. , 3 MB
同一个电话! Apache 128 ms,php 12.8 ms。
如果您使用的是apache,请加载额外的模块并使用此日志格式获得上述端到端时间和IO:
加载:
LoadModule log_config_module libexec/mod_log_config.so
日志格式:
LogFormat "%h %l %u %t \"%r\" %>s %b %T/%D I:%I O:%O" common