需要测试下 代码的性能,使用了 xhprof + xhgui
1. 下载xhprof,
这里下载吧 :https://github.com/longxinH/xhprof.git
2, 安装
cd xhprof/extension/
/usr/local/php/bin/phpize ./configure --with-php-config=/opt/php-7.0.14/bin/php-config --enable-xhprof
make&&make install
3.修改 php.ini 文件
php -i | grep php.ini
[xhprof]
extension=xhprof.so
xhprof.output_dir=/data/www/xhprof/save_output_dir //该目录自由定义即可,用来保存xhprof生成的源文件
重启php-fpm
kill -USR2 `cat /opt/php-7.0.14/var/run/php-fpm.pid`
//切换到下载的 xhprof 目录 cp -r xhprof/xhprof_html ROOT_PATH/ cp -r xhprof/xhprof_lib ROOT_PATH/
xhprof_enable(); //你需要分析的代码
$xhprof_data = xhprof_disable();
include_once ROOT_PATH.'/xhprof_lib/utils/xhprof_lib.php';
include_once ROOT_PATH . '/xhprof_lib/utils/xhprof_runs.php';
$xhprof_runs = new XHProfRuns_Default();
$run_id = $xhprof_runs->save_run($xhprof_data, "xhprof_test"); //将run_id保存起来或者随代码一起输出
yum install graphviz
查看结果
$host_url/xhpfrof_html/index.php?run=58d3b28b521f6&source=xhprof_test
Calls
/Call Count
:函数被调用的次数Incl. Wall Time
/Wall Time
:执行该函数(包括子函数)耗费的时间Incl. MemUse
/Memory Usage
:该函数(包括子函数)占用的内存Incl. PeakMemUse
/Peak Memory Usage
:函数(包括子函数)占用内存的峰值Incl. CPU
/CPU
:执行该函数(包括子函数)花费的CPU时间Excl. Wall Time
/Exclusive Wall Time
:函数本身(不包括子函数)耗费的时间Excl. MemUse
/Exclusive Memory Usage
:函数本身(不包括子函数)占用的内存Excl. PeakMemUse
/Exclusive Peak Memory Usage
:函数本身(不包括子函数)耗费内存的峰值Exclusive CPU
:函数本身(不包括子函数)花费的CPU时间