wampserver下的webgrind和xdebug對php程序進行性能分析

wampserver2.4自帶了一個webgrind

1、需要組件環境

    PHP 5.3

    Apache服務器

    xdebug

  我自己用的是Wamp 2.1,不過用什麼樣的配置方法都是一樣的,無非改改PHP.ini,在組件裏添加文件。

  閒話少說,正式開始“玩”這個所謂的WebGrind。

  第一步:查看自己的版本中是否存在WebGrind;

    一般wamp的首頁有這個選項,當然你也可以通過訪問 http://127.0.0.1/webgrind 來查看是否存在;目錄在wamp/apps

    當然你也可以下載,自己配置:

    Xdebug下載地址:xdebug http://www.xdebug.org

    WebGrind下載地址:http://code.google.com/p/webgrind/

  第二步,配置php.ini文件:

    找到PHP.ini 中的xdebug,編輯那裏的選項,我把所有的off都開啓成on了,這樣就可以了;

第三步,測試一下,打開本地的任意一個php文件,WebGrind都會自動監測的,然後打開http://127.0.0.1/webgrind 查看那裏的結果


說明:
1):webgrind把所有被調用函數/方法首先做一個排序,由高到低顯示。然後取出前N個,使他們耗時比率之和在90%到100%之間。圖中show右側的下拉框就是提示用戶進行選擇的。這裏最好不要選擇100%,因爲100%會顯示所有被調用的函數/方法,如果是個代碼複雜的頁面,那麼webgrind偶爾會被卡死。並且通常我們只要關注耗時前幾名的函數/方法即可。
2):選擇profie文件,默認分析最新一次的xdebug記錄。如果已經設置了xdebug並且運行過php文件多次那麼下拉框中會出現多個選項,每個選項都對應一次xdebug時產生的文件。如果是對同一個文件進行多次xdebug,可以根據文件名包含的時間戳來區分。
3):in右側的下拉框提供了三種方式來顯示結果(會影響圖中表格的數據單位),分別爲:百分比、毫秒、微妙。
4):表格中的列
      Invocation Count:被調用執行的次數
      Total Self Cost:函數自身開銷耗時,毫秒/ 微秒 /百分比(並不包含調用其他函數)
      Total Inclusive Cost:綜合耗時,包括自身耗時和調用所有的其他函數的耗時
5):彩色進度條
彩色進度條是一個耗時量比較條。藍色代表php內置函數,灰色(這裏佔用很小看不出)代表require/include,綠色代表類方法,橙黃色代表其他過程函數 (用戶自定義函數)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章