http://pecl.php.net/package/xhprof,默认的PHP没有自带这个扩展,所以要进行安装。
tar zxf xhprof-0.9.3.tgz #解压安装包
cd xhprof-0.9.3 #进入文件夹
cp -r xhprof_html xhprof_lib /data/xhprof #根据具体情况进行拷贝
cd extension
phpize #phpize侦测PHP安装环境
./configure
make
make install
备注:xhprof_html中存放分析结果项目,用来展示性能分析,需要将文件夹放到apache的项目目录下面才能运行访问 ;xhprof_lib作为三方库,用于引入到PHP项目中。
2、配置php.ini支持XHProf,如果不知道php.ini在哪里,可以使用命令find / -name php.ini。
extension=xhprof.so
;
; directory used by default implementation of the iXHProfRuns
; interface (namely, the XHProfRuns_Default class) for storing
; XHProf runs.
;
xhprof.output_dir=/data/xhprof/logs #根据实际情况进行配置
配置成功后,重启apache,使用service apache restart 或者service httpd restart等相关命令,如果phpinfo()出现如下页面,表示安装成功。
3、 安装Graphviz,安装Graphviz的目的是为了xhprof图形化web工具查看profiling log文件。
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
如果找不到对应的资源可以使用这个链接https://graphviz.gitlab.io/pub/graphviz/stable/SOURCES/graphviz.tar.gz。
方式2:使用命令 yum install graphviz 直接安装。
4.、安装libpng(可能需要的步骤)
编译graphviz提示信息png: No (missing png.h),也就是dot 不支持PNG,此时需要安装libpng包。
tar zxf libpng-1.5.1.tar.gz
cd libpng-1.5.1
./configure
make
make install
或者使用命令yum install libpng直接进行安装
1、 创建一个文件test.php,然后按照下面的模式进行编码。
// start profiling
xhprof_enable();
// xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY); // 允许CPU和内存输出
// run program
….
// stop profiler
$xhprof_data = xhprof_disable();
//
// Saving the XHProf run
// using the default implementation of iXHProfRuns.
//
$XHPROF_ROOT = “/projects/xhprof”;//这里填写的就是你的xhprof的路径
include_once $XHPROF_ROOT . “/xhprof_lib/utils/xhprof_lib.php”;
include_once $XHPROF_ROOT . “/xhprof_lib/utils/xhprof_runs.php”;
$xhprof_runs = new XHProfRuns_Default();
// Save the run under a namespace “xhprof_foo”.
//
// **NOTE**:
// By default save_run() will automatically generate a unique
// run id for you. [You can override that behavior by passing
// a run id (optional arg) to the save_run() method instead.]
//
$run_id = $xhprof_runs->save_run($xhprof_data, “xhprof_foo”);
echo “—————\n”.
“Assuming you have set up the http based UI for \n”.
“XHProf at some address, you can view run at \n”.
“http://<xhprof-ui-address>/index.php?run=$run_id&source=xhprof_foo\n”.
“—————\n”;
?>
2、查看分析报告
转载请注明:XAMPP中文组官网 » Linux环境下面安装PHP性能分析工具XHProf