安裝xhprof過程就不說了

php.ini配置新增如下:

[xhprof]

extension = “xhprof.so”

xhprof.output_dir=/tmp/logs/xhprof   //資料輸出的目錄

程式程式碼引用:(thinkphp案例)

<?php

xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);

xhprof_enable();

$xhprof_on = true;



define(`THINK_PATH`, `./ThinkPHP`);

define(`APP_NAME`, `test`);

define(`APP_PATH`, `./test`);

require(THINK_PATH.”/ThinkPHP.php”);

App::run();



$xhprof_data = xhprof_disable();

$xhprof_root = `/htdoc/xhprof-0.9.2/`;

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();

$run_id = $xhprof_runs->save_run($xhprof_data, “hx”);

echo `<a href=”http://debug.qq.com/xhprof_html/index.php?run=`.$run_id.`&source=hx” target=”_blank”>統計</a>`;

?>

再配置一個debug.qq.com的域名

server

 {

   listen       80;

   server_name  debug.qq.com;

   index index.html index.htm index.php;

   root  /htdoc/xhprof-0.9.2/;


程式頁面最底部會出現統計字樣 點選檢視即可

引數詳解:


名詞:

Function Name 函式名

Calls 呼叫次數

Calls% 呼叫百分比

Incl. Wall Time (microsec) 呼叫的包括子函式所有花費時間 以微秒算(一百萬分之一秒)

IWall% 呼叫的包括子函式所有花費時間的百分比

Excl. Wall Time (microsec) 函式執行本身花費的時間,不包括子樹執行時間,以微秒算(一百萬分之一秒)

EWall% 函式執行本身花費的時間的百分比,不包括子樹執行時間

Incl. CPU(microsecs) 呼叫的包括子函式所有花費的cpu時間。減Incl. Wall Time即為等待cpu的時間

減Excl. Wall Time即為等待cpu的時間

ICpu% Incl. CPU(microsecs)的百分比

Excl. CPU(microsec) 函式執行本身花費的cpu時間,不包括子樹執行時間,以微秒算(一百萬分之一秒)。

ECPU% Excl. CPU(microsec)的百分比

Incl.MemUse(bytes) 包括子函式執行使用的記憶體。

IMemUse% Incl.MemUse(bytes)的百分比

Excl.MemUse(bytes) 函式執行本身記憶體,以位元組算

EMemUse% Excl.MemUse(bytes)的百分比

Incl.PeakMemUse(bytes) Incl.MemUse的峰值

IPeakMemUse% Incl.PeakMemUse(bytes) 的峰值百分比

Excl.PeakMemUse(bytes) Excl.MemUse的峰值

EPeakMemUse% EMemUse% 峰值百分比