通过开启slow.log排查php后端响应过长的原因

手上的一个站点,最近发现了一个问题.就是莫名其妙的后端响应过长,并且是非常长.更换了服务器也没用.

通过top发现,在打开wordpress评论页面时,php-fpm占用会突然变高.并且要等大概接近10秒那样才能打开页面.

打开没有缓存的首页也是后端响应过长,但是新建文章页面没有问题.

一开始以为是CPU太弱和PHP-FPM进程太少,但是调高了进程和更换了服务器依然没解决问题.

最后在一个日文站点发现了通过开启PHP-FPM slow.log记录的办法,并逐步排除了问题.

通过添加以下代码开启slow.log:

request_slowlog_timeout = 3s
slowlog = /var/log/slow.log

这是我开启slow.log后查看log的截图.通过判断是wordpress主题模板函数里面的一段代码造成的,这段代码是我之前在网上找的,本地缓存Gravatar头像的代码.删掉后,就没出现莫名其妙响应过长了.
截图_2016-05-18_16-41-22