php代码性能分析
最近在项目中嵌入wordpress,发现wordpress效率非常低,针对此问题进行了部分优化。
1、首先增加redis缓存,通过index.php入口处进行全页面缓存(数据量不大,数据更新频率低,因此适合进行全量缓存)
2、增加缓存后未能解决wordpress在没有走缓存时慢的问题,因次我们进行wordpress代码分析
通过调研,我们发现phptrace(360开源系统)可以满足我们的需求。
它可以跟踪PHP在运行时的函数调用、请求信息、执行流程,并且提供有过滤器、统计信息、当前状态等实用功能。 在任何环境下,它都能很好的定位阻塞问题以及在高负载下Debug,尤其是线上生产环境。
具有以下特性:
- 低开销,在只加载模块不开启Trace功能时对性能影响极低
- 稳定性,已经稳定运行在Qihoo 360线上服务中,并针对主流框架进行测试
- 易用性,对于未安装trace扩展的环境,也能够追踪运行状态
3、安装phptrace,下载源码,进入phptrace/extension目录。
phpize ./configure make make cli make install-all
4、验证安装结果
php -r 'for ($i = 0; $i < 20; $i++) usleep(50000);' & phptrace -p $!
5、phptrace -p 端口号
进行查看具体耗时时间