xhprof在php中的安装配置和使用
导读:本文共3022字符,通常情况下阅读需要10分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 前置构建 docker 虚拟测试环境docker run -it -p 80:80 -v /Users/xxx/Desktop/xhprof:/data phalcon /bin/bash复制代码1. 安装xhprof支持php7的xhprof还挺多的, 我们这里使用 github.com/longxinH/xh… 这个项目。1.1 拉取项目git clone ... ...
目录
(为您整理了一些要点),点击可以直达。支持php7的xhprof还挺多的, 我们这里使用 github.com/longxinH/xh… 这个项目。
执行完最后,我们需要将此 so 文件引入到php.ini配置下
查看 php.ini 文件路径
编辑 /usr/server/php7/etc/php.ini
重启 php-fpm 即可。
搭建案例过程略
我们在要监控的逻辑前面嵌入下面代码
output:
我们发现调用了xhprof拓展中的两个函数, 输出值含义
看到这里发现, 我们获取的信息并不是很多, 比如我们经常还要关心占用的内存、cpu等指标.
output:
我们发现统计内存占用的字段, 有两个输出 mu 和 pmu , mu 表示使用的内存(bytes), pmu 表示使用的内存峰值(bytes)
当然,我们还是更希望图表的形式可以更直观的观察性能瓶颈, 下面我们看下怎么使用.
在我们下载 xhprof 源码时候,目录中已经包含了
您还记得我们在引入 xhprof.so 拓展时候的另一个配置吗?
没错, 在 xhprof.output_dir 配置的路径下(需要自己手动创建下目录)
感兴趣可以打开看看, 里面存了我们分析的一些序列化对象信息.
我们指向我们xhprof项目中的 xhprof_html 目录
相信你到此明白了 我们的 run_id 和 save_run中的project 的作用了
我们最上面部分是请求的接口指标总览, 下面是具体的每个调用函数的执行情况。
其余后面的 % 结尾均为对应的占比
红色部分和黄色部分重点关心下,如果感觉只想分析某个流程, 可以点击到某个方法里面再点击【View Full Callgraph】查看图表
我们在上面使用xhprof的时候发现了强依赖, 在代码中引入了 xhprof 安装包里的几个类.
这里我们可以使用composer包引用来实现相同功能, 这里推荐引入 pbweb/xhprof 包。
xhprof在php中的安装配置和使用的详细内容,希望对您有所帮助,信息来源于网络。