前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >php性能分析工具:xhprof

php性能分析工具:xhprof

作者头像
仙士可
发布2019-12-19 14:45:15
1.1K0
发布2019-12-19 14:45:15
举报
文章被收录于专栏:仙士可博客仙士可博客

xhprof是php的一个性能分析扩展,它可以帮助我们查看php执行情况,有助于我们优化php的执行语句.

安装

xhprof的开源地址为:https://github.com/longxinH/xhprof

版本下载地址:https://github.com/longxinH/xhprof/releases

安装命令:

代码语言:javascript
复制
 wget https://github.com/longxinH/xhprof/archive/v2.1.0.tar.gz
 tar -zvxf v2.1.0.tar.gz
 cd xhprof-2.1.0/
 cd extension/
 phpize
 ./configure --with-php-config=/www/server/php/72/bin/php-config 
 make && make install

在php.ini增加配置

代码语言:javascript
复制
[xhprof]
extension=xhprof.so;
xhprof.output_dir=/tmp/xhprof

说明

./configure 不一定需要增加--with-php-config,只有当服务器有多个版本或者php-config没有在/usr/bin的时候才需要

xhprof的output_dir配置项需要可读可写权限,可以自己设定

使用

测试类引入:

还记得之前下载的源码吗?把里面的xhprof_lib目录复制出来,复制到项目目录,并且引入:

代码语言:javascript
复制
include_once '/home/tioncico/www/xhprof/xhprof_lib/utils/xhprof_lib.php';
include_once '/home/tioncico/www/xhprof/xhprof_lib/utils/xhprof_runs.php';

开启性能分析:xhprof_enable函数

代码语言:javascript
复制
xhprof_enable(XHPROF_FLAGS_CPU|XHPROF_FLAGS_MEMORY|XHPROF_FLAGS_NO_BUILTINS);
//XHPROF_FLAGS_NO_BUILTINS (integer)
//使得跳过所有内置(内部)函数。
//XHPROF_FLAGS_CPU (integer)
//使输出的性能数据中添加 CPU 数据。
//XHPROF_FLAGS_MEMORY (integer)
//使输出的性能数据中添加内存数据。

开启性能分析之后,php的代码都会被监控,进行分析运行状态

关闭性能分析

代码语言:javascript
复制
$xhprof_data = xhprof_disable();//关闭性能分析
$xhprof_runs = new \XHProfRuns_Default();
$run_id = $xhprof_runs->save_run($xhprof_data, 'your_project');//把性能分析的报告保存到output_dir目录

查看性能分析:

还记得之前下载的源码吗?把里面的xhprof_html目录复制出来,单独做成一个目录,并且通过nginx或者apache配置成一个可访问的php站点:

并且把之前的xhprof_lib复制一份到同级目录:

访问这个站点:

点击查看:

这样,就可以查看到所有代码执行的cpu消耗,执行时间,占用情况了,根据这份数据,去优化最耗时间的代码即可

点击

可查看流程图:

本文为仙士可原创文章,转载无需和我联系,但请注明来自仙士可博客www.php20.cn

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-11-01 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装
    • 说明
    • 使用
      • 测试类引入:
        • 开启性能分析:xhprof_enable函数
        • 关闭性能分析
        • 查看性能分析:
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档