【作用】
xhprof是facebook开源的一个php性能分析工具。
【安装】
xhprof扩展的安装:
wget http://pecl.php.net/get/xhprof-0.9.2.tgz
tar zxf xhprof-0.9.2.tgz
cd xhprof-0.9.2/extension/
phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
vi /usr/local/webserver/php/etc/php.ini
extension=xhprof.so; //别忘了将生产的xhprof.so,拷贝到你的扩展目录
xhprof.output_dir=存放分析数据的日志文件的路径
fpm reload //重启一下fpm
Graphviz安装(这个主要是画图需要的库)
wget http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.24.0.tar.gz
tar zxf graphviz-2.24.0.tar.gz
cd graphviz-2.24.0
./configure
make && make install
【对应的php脚本】
<?php
//cpu:XHPROF_FLAGS_CPU 内存:XHPROF_FLAGS_MEMORY
// 如果两个一起:XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY 4xhprof_enable(XHPROF_FLAGS_CPU +XHPROF_FLAGS_MEMORY);
//要测试的php代码
$data= xhprof_disable(); //返回运行数据
// xhprof_lib在下载的包里存在这个目录,记得将目录包含到运行的php代码中
include_once"xhprof_lib/utils/xhprof_lib.php";
include_once"xhprof_lib/utils/xhprof_runs.php";
$objXhprofRun= newXHProfRuns_Default();
//第一个参数j是xhprof_disable()函数返回的运行信息
// 第二个参数是自定义的命名空间字符串(任意字符串),
// 返回运行ID,用这个ID查看相关的运行结果
$run_id= $objXhprofRun->save_run($data, "xhprof");
var_dump($run_id);
将xhprof源码中的xhprof_lib&&xhprof_html相关目录copy到可以访问到的地址
【查看运行结果】
访问 xxx/xhprof_html/index.php?run=$run_id&source=bluefrog 就可经看到你的php代码运行的相关情况
在php.ini中配置了xhprof.output_dir,到这个路径下你会发现有类似50d93268c386d.xhprof的文件,这个就是数据分析原始文件,
其中50d93268c386d对应的就是run参数的值;xhprof对应的就是source参数的值;
【相关解释】
Inclusive Time (或子树时间):包括子函数所有执行时间。
Exclusive Time/Self Time:函数执行本身花费的时间,不包括子树执行时间。
Wall时间:花去了的时间或挂钟时间。
CPU时间:用户耗的时间+内核耗的时间
Function Name 函数名
Calls 调用次数
Calls% 调用百分比
Incl. Wall Time (microsec) 调用的包括子函数所有花费时间 以微秒算(一百万分之一秒)
IWall% 调用的包括子函数所有花费时间的百分比
Excl. Wall Time (microsec) 函数执行本身花费的时间,不包括子树执行时间,以微秒算(一百万分之一秒)
EWall% 函数执行本身花费的时间的百分比,不包括子树执行时间
Incl. CPU(microsecs) 调用的包括子函数所有花费的cpu时间。减Incl. Wall Time即为等待cpu的时间
减Excl. Wall Time即为等待cpu的时间
ICpu% Incl. CPU(microsecs)的百分比
Excl. CPU(microsec) 函数执行本身花费的cpu时间,不包括子树执行时间,以微秒算(一百万分之一秒)。
ECPU% Excl. CPU(microsec)的百分比
Incl.MemUse(bytes) 包括子函数执行使用的内存。
IMemUse% Incl.MemUse(bytes)的百分比
Excl.MemUse(bytes) 函数执行本身内存,以字节算
EMemUse% Excl.MemUse(bytes)的百分比
Incl.PeakMemUse(bytes) Incl.MemUse的峰值
IPeakMemUse% Incl.PeakMemUse(bytes) 的峰值百分比
Excl.PeakMemUse(bytes) Excl.MemUse的峰值
EPeakMemUse% EMemUse% 峰值百分比
相关推荐
xhprof是facebook研发的一款分析php性能的工具,可以分析方法的使用次数以及执行时间等,还可以生成报表
4. **性能指标**:xhprof提供的性能指标包括CPU时间、Wall Time(实际运行时间)、内存使用量、函数调用次数等。通过这些指标,可以了解到程序的执行效率和资源消耗情况。 5. **优化策略**:根据xhprof的报告,...
xhprof_enable(XHPROF_FLAGS_MEMORY + XHPROF_FLAGS_CPU+XHPROF_FLAGS_NO_BUILTINS); $xhprof_on = true; //这里是你的代码 if ($xhprof_on) { $name_space="IndexController"; $xhprof_data = xhprof_disable...
4. **关闭xhprof并获取结果**:通过`xhprof_disable()`结束xhprof的监控,并使用`xhprof_dump_output()`获取分析结果。 5. **数据解析**:分析结果通常以JSON格式保存,可以使用XHGUI或其他解析工具查看和解析。 6...
XHProf是Facebook开源的一款强大的性能剖析器,能够帮助开发者深入理解代码执行的各个方面,包括CPU使用、内存消耗以及函数调用的次数等。而MD_XHProf则是对XHProf的进一步改进,旨在更好地适应PHP7的特性和性能需求...
3. **启动XHProf**:在代码中使用`xhprof_enable()`启动分析,结束后使用`xhprof_disable()`停止并获取分析数据。 ### 使用流程 1. **运行应用**:在开启了XHProf的情况下运行PHP应用,它会默默收集性能数据。 2....
Xhprof 官方文档 -- 网上好多xhprof 的介绍,很少看到官方文档, Here it is. wish you enjoy it.
xhprof安装步骤xhprof安装步骤
3. **启动XHProf**:在PHP代码中开启XHProf,一般通过`xhprof_enable()`开始一个测试会话,然后在结束时使用`xhprof_disable()`获取报告。 4. **收集数据**:运行你的PHP应用,XHProf会记录每个函数调用的详细信息...
xhprof php性能分析 1.clone xhprof 此版本为github第三方扩展 (php官房不支持 php 7) ...xhprof.output_dir = /tmp/xhprof ;性能分析数据文件存放位置 需要php用户有可写可读权限 4.对项目入口文件添加代码
要使用Xhprof,只需在要分析的PHP脚本开头和结尾分别调用`xhprof_enable()`和`xhprof_disable()`,分析数据就会被保存到指定的输出目录。 然而,Xhprof生成的数据是纯文本格式,对于非专业人员来说可能难以理解。...
资源内包含基于php5.4的xhprof扩展,xhprof源码和图形分析工具graphviz的免安装包 及相关操作的详细说明文档。文档中还要常见的failed to execute cmd " dot -Tpng" 的解决方案
XHProf是Facebook开源的php性能分析工具,是php的一个扩展。windows平台可以通过此链接下载,同时还需下载制图工具Graphviz,最后去github下载相关的代码(只需xhprof_html、xhprof_lib、examples)。
XHProf on Windows; 在windows下进行php性能监测调试的工具XHProf; XHProf是facebook出的一个php的调试工具: 相关文档在:http://mirror.facebook.net/facebook/xhprof/doc.html
1. **XHProf**:XHProf 是一种全栈的性能分析工具,它提供了 CPU 使用率、内存使用情况以及调用树等详细信息。通过 XHProf,开发者可以追踪函数调用,发现耗时较长的代码段,从而优化 PHP 应用的性能。 2. **...
3. **停止Xhprof**:完成测试后,使用`xhprof_disable()`关闭性能分析。 通过以上步骤,您将在LNMP环境中成功部署Laravel并安装了Xhprof。在开发过程中,Xhprof可以帮助您发现潜在的性能问题,优化代码,提升应用...
xhprof on windows; windows下的php调试工具; xhprof是facebook出的一个php的调试工具: 相关文档在:http://mirror.facebook.net/facebook/xhprof/doc.html
为了应用XHProf进行性能分析,开发者需要在PHP脚本中使用xhprof_enable()和xhprof_disable()函数来控制性能分析的开始和结束。在这两个函数之间放置需要分析的程序逻辑。性能分析结束后,可以将性能数据保存到...