记录一下9月份发生的事情。

之前发现博客响应速度突然变得非常缓慢,有时甚至响应时间超过了 3000ms,然而又没法定位到出现问题的函数,只能进行简单的排查(关闭插件、更换主题),终于在更换回 Grace 之后响应速度又恢复了,于是将问题定位到 Cosy 的身上,因为这款主题的 functions.php 是加密的,我没有办法进行深入调查,于是直到前两周,我找到了这款工具 —— xhprof

据说是 Facebook 拿来做线上测试的工具,遂立即部署之。

然而这个工具也是个大坑,原版代码不支持 php7.2,WordPress 下没有合适的插件。

终于经过我搜索 GitHub 之后找到了最佳的组合方式。(后续如果有人需要的话请回复本文,我会打包好上传,否则最迟填坑时间为2019年7月20日)

于是 xhprof 及 wp-xhprof 插件就部署上了,打开插件后,在页面的底部会生成指向分析报告的 Profiler output

使用 xhprof 分析 WordPress 性能-Jacky's Blog
xhprof 报告

点击 View Full Callgraph 我们还可以得到每个函数加载的时间

使用 xhprof 分析 WordPress 性能-Jacky's Blog
某个函数与之相关联的函数的加载的时间

根据报告,我们可以发现 get_public_ip() 这个函数的加载时间竟花费了 3428ms,然后搜索关键词,迅速定位到问题的原因并重写了这个函数,问题解决了。网站的加载时间重回 <1s