PHP7下安装并使用xhprof性能分析工具

  • Post category:http

下面是在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_CPUXHPROF_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来查看分析结果。