下面是在PHP7下安装并使用xhprof性能分析工具的完整攻略:
安装xhprof
首先,我们需要安装xhprof扩展。
下载xhprof
我们可以从PECL上下载最新的xhprof扩展源码包。
$ wget https://pecl.php.net/get/xhprof-2.2.4.tgz
解压并编译安装
接下来,我们需要对xhprof源码包进行解压和编译安装。
$ tar zxvf xhprof-2.2.4.tgz
$ cd xhprof-2.2.4/extension/
$ phpize
$ ./configure --with-php-config=/usr/bin/php-config
$ make
$ make install
配置php.ini
编译安装好xhprof之后,我们需要在php.ini文件中增加xhprof扩展的配置。
[xhprof]
extension=xhprof.so
xhprof.output_dir=/var/tmp/xhprof
其中,xhprof.output_dir
是xhprof记录分析结果的文件夹路径。
重启PHP
配置完成之后,需要重启PHP进程使配置文件生效。
使用xhprof
安装好xhprof之后,我们就可以在代码中使用xhprof进行性能分析了。
开始性能分析
我们可以在需要分析的代码中插入以下代码:
xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);
其中,XHPROF_FLAGS_CPU
和XHPROF_FLAGS_MEMORY
分别表示要分析的性能指标,可以根据需求进行自由组合。
结束性能分析
在需要结束性能分析的地方,我们可以插入以下代码:
$data = xhprof_disable(); // 获取性能分析结果
// 存储性能分析结果到文件
include_once '/path/to/xhprof_lib/utils/xhprof_lib.php';
include_once '/path/to/xhprof_lib/utils/xhprof_runs.php';
$run_id = (new XHProfRuns_Default())->save_run($data, 'test');
echo 'XHProf run id: ' . $run_id . "\n";
其中,我们通过xhprof_disable()
获取性能分析结果,再通过XHProfRuns_Default()
存储到文件中。
存储之后,我们可以从xhprof.output_dir
配置的文件夹路径中找到性能分析结果文件,通过xhprof提供的UI界面查看分析结果。例如:
$ php -S localhost:8000
然后,我们可以在浏览器输入http://localhost:8000/xhprof/xhprof_html/index.php
来查看分析结果。