首頁  >  文章  >  後端開發  >  ubuntu安裝xhprof

ubuntu安裝xhprof

WBOY
WBOY原創
2016-08-08 09:21:591086瀏覽

1、安裝

<code>wget <span>-c</span> http:<span>//pecl.php.net/get/xhprof-0.9.2.tgz</span>
tar <span>-xzvf</span><span>.</span>/xhprof<span>-</span><span>0.9</span><span>.2</span><span>.</span>tgz
cp <span>.</span>/xhprof<span>-</span><span>0.9</span><span>.2</span><span>.</span>tgz <span>.</span>/www         <span>//xhprof自身带有一个web版的分析页面,放到我的web服务器下面</span>
cd <span>.</span>/xhprof<span>-</span><span>0.9</span><span>.2</span>/extension
/usr/<span>local</span>/php/bin/phpize
<span>.</span>/configure <span>--</span>enable<span>-xhprof</span><span>--</span><span>with</span><span>-php</span><span>-config</span><span>=</span>/usr/<span>local</span>/php/bin/php<span>-config</span>
make <span>&&</span> make install</code>
<code>[xhprof]
extension=xhprof.so
xhprof.output_dir=<span>/data/xhprof</span>  /<span>/如果不加存放目录的话,默认是放在/tmp</span>下面 (注意:要有写的权限,直接 <span>777</span> 吧)!</code>
<code>service apache2 restart</code>
<code><span>// 启动xhprof</span>
xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY); 

各种牛逼的代码。。。。。。。
<span>// 停止xhprof</span><span>$xhprof_data</span> = xhprof_disable();
<span>$XHPROF_ROOT</span> = realpath(dirname(<span>__FILE__</span>) . <span>'/..'</span>);
<span>include_once</span><span>$XHPROF_ROOT</span> . <span>"/xhprof_lib/utils/xhprof_lib.php"</span>;
<span>include_once</span><span>$XHPROF_ROOT</span> . <span>"/xhprof_lib/utils/xhprof_runs.php"</span>; 
<span>// 保存统计数据,生成统计ID和source名称</span><span>$xhprof_runs</span> = <span>new</span> XHProfRuns_Default();
<span>$run_id</span> = <span>$xhprof_runs</span>->save_run(<span>$xhprof_data</span>, <span>"xhprof_foo"</span>); <span>//source名称是xhprof_foo</span><span>// 查看统计信息</span><span>echo</span><span>"<div><a href='../xhprof_html/index.php?run="</span> . <span>$run_id</span> . <span>"&source=xhprof_foo' target='_blank'>XHProf view</a></s></div>"</span>;
</code>

2、顯示結果
有分錶格形式和圖片顯示各函數的呼叫情況
表格的這樣些欄位

列名 描述
Function Name 方法名稱。
Calls 方法被呼叫的次數。
Calls% 方法呼叫次數在同級方法總數呼叫次數中所佔的百分比。
Incl.Wall Time (microsec) 方法執行所花費的時間,包括子方法的執行時間。 (單位:微秒)
IWall% 方法執行花費的時間百分比。
Excl. Wall Time (microsec) 方法本身執行所花費的時間,不包括子方法的執行時間。 (單位:微秒)
EWall% 方法本身執行所花費的時間百分比。
Incl. CPU (microsecs) 方法執行所花費的CPU時間,包括子方法的執行時間。 (單位:微秒)
ICpu% 方法執行花費的CPU時間百分比。
Excl. CPU (microsec) 方法本身執行所花費的CPU時間,不包含子方法的執行時間。 (單位:微秒)
ECPU% 方法本身執行所花費的CPU時間百分比。
Incl.MemUse (bytes) 方法執行佔用的內存,包括子方法執行佔用的內存。 (單位:位元組)
IMemUse% 方法執行佔用的記憶體百分比。
Excl.MemUse (bytes) 方法本身執行佔用的內存,不包括子方法執行佔用的內存。 (單位:位元組)
EMemUse% 方法本身執行佔用的記憶體百分比。
Incl.PeakMemUse (bytes) Incl.MemUse峰值。 (單位:位元組)
IPeakMemUse% Incl.MemUse峰值百分比。
Excl.PeakMemUse (bytes) Excl.MemUse峰值。單位:(位元組)
EPeakMemUse% Excl.MemUse峰值百分比。

圖片的就需要去安裝libpng和graphviz
安裝libpng

<code>wget -c http://sourceforge<span>.net</span>/projects/libpng/files/libpng15/<span>1.5</span><span>.23</span>beta01/libpng-<span>1.5</span><span>.23</span>beta01<span>.tar</span><span>.gz</span>/download
tar -xzvf ./libpng-<span>1.5</span><span>.23</span>beta01<span>.tar</span><span>.gz</span>
cd ./libpng-<span>1.5</span><span>.23</span>beta01
./configure
make && make install
</code>

安裝graphviz

<code>wget -c http://www<span>.graphviz</span><span>.org</span>/pub/graphviz/stable/SOURCES/graphviz-<span>2.24</span><span>.0</span><span>.tar</span><span>.gz</span>
tar -xzvf ./graphviz-<span>2.24</span><span>.0</span><span>.tar</span><span>.gz</span>
cd ./graphviz-<span>2.24</span><span>.0</span>
./configure
make && make install
</code>

安裝完,重新啟動apache
service apache2 restart

在表格頁點選[View Full Callgraph]
就可以以圖片形式來展示各個程式碼段的呼叫以效能情況

以上就介紹了ubuntu安裝xhprof,包含了方面的內容,希望對PHP教程有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn