安裝xhprof:
wgettar zxf xhprof-0.9.2.tgz
cd xhprof-0.9.2
拷貝顯示檔案到要測試的**裡
php.ini中新增
extension_dir = "/usr/local/webserver/php/lib/php/extensions/no-debug-non-zts-20060613/
"
這句我原來就有了,就這用新增下面兩句
extension=xhprof.soxhprof.output_dir=/www/logs/xhprof
分析日誌輸出在/www/logs/xhprof目錄。
/usr/local/webserver/php/sbin/php-fpm reload/usr/local/webserver/nginx/sbin/nginx -s reload
重新整理phpinfo頁面,看到輸出中有了xhprof資訊。
xhprof 0.9.2
cpu num 2
安裝graphviz,乙個畫圖工具
wgettar zxf graphviz-2.24.0.tar.gz
cd graphviz-2.24.0./configure
make && make install
程式試例
頭部:
xhprof_enable();//xhprof_enable(xhprof_flags_no_builtins); 不記錄內建的函式
//xhprof_enable(xhprof_flags_cpu + xhprof_flags_memory); 同時分析cpu和mem的開銷
$xhprof_on = true;
我覺得用xhprof_enable();就夠用了,只統計執行時間(wall time)。
生產環境可使用:
if (mt_rand(1, 10000) == 1)
尾部:
if($xhprof_on)
執行程式,底部出現統計字樣,點過去就可以看到效能分析了。按執行時間排序,很容易找出化時間最長的函式。
點[view full callgraph]圖形化顯示,最大的效能問題會用紅色標出,其次是黃色,很明顯。
名詞: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% 峰值百分比
PHP效能分析工具XHProf
xhprof是facebook開源出來的乙個php輕量級的效能分析工具,跟xdebug類似,但效能開銷更低,還可以用在生產環境中,也可以由程式開關來控制是否進行profile。基於瀏覽器的效能分析使用者介面能更容易檢視,或是與同行們分享成果。也能繪製呼叫關係圖。在資料收集階段,它記錄呼叫次數的追蹤和...
xhprof效能分析學習
全新開發的一套產品,待c傳輸結束,s開始處理,發現c端結果展示很慢,為此想分析下時間消耗的地方,c端暫未打點,從s開始分析。純粹是time和error log 顯示date,xhprof的輕量級性質和匯聚功能,使得它非常適合用於收集 生產環境 的效能統計資料的統計。flat profile 提供函式...
PHP效能分析工具xhprof的安裝使用與注意事項
前言 xhprof由facebook開源出來的乙個php效能監控工具,占用資源很少,甚至能夠在生產環境中進行部署。它可以結合graphviz使用,能夠以的形式很直觀的展示 執行耗時。下面主要講一下安裝和使用過程 1 安裝 1 和解壓 wget tar zxvf xhprof 0.9.4.tgz 2 ...