需要測試下 代碼的性能,使用了 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時間