PHP效能測試工具xhprof實戰案例解析

來源:互聯網
上載者:User
這次給大家帶來PHP效能測試工具xhprof實戰案例解析,PHP效能測試工具xhprof實戰案例解析的注意事項有哪些,下面就是實戰案例,一起來看一下。

xhprof概述:

XHProf是一個分層PHP效能分析工具。它報告函數層級的請求次數和各種指標,包括阻塞時間,CPU時間和記憶體使用量情況。一個函數的開銷,可細分成調用者和被調用者的開銷,XHProf資料收集階段,它記錄調用次數的追蹤和包容性的指標弧在動態callgraph的一個程式。它專屬的資料計算的報告/後處理階段。在資料收集時,XHProfd通過檢測迴圈來處理遞迴的函數調用,並通過給遞迴調用中每個深度的調用一個有用的命名來避開死迴圈。XHProf分析報告有助於理解被執行的代碼的結構,它有一個簡單的HTML的使用者介面( PHP寫成的)。基於瀏覽器的效能分析使用者介面能更容易查看,或是與同行們分享成果。也能繪製呼叫歷程圖。

安裝與使用:

最近要做網站的效能對比,於是就找一款效能測試工作來玩玩,工具很多,但相比之前還是覺得xhprof的安裝和使用相對來說簡單點,資料分析也都還可以,下面就說說它的安裝和使用。。。

編譯安裝xhprof

cd xhprof-0.9.4/xhprof-0.9.4/extension/phpize./configuremakesudo make install

將產生的xhprof.so檔案加到php.ini檔案中,然後重啟apache了

...#這裡要使用相對路徑載入的話首先要看一下extension_dir配置的路徑,或者直接寫上`.so`檔案的絕對能夠路徑即可。。。extension=xhprof.so...sudo apachectl restart##測試擴充是否安裝成功,有如下輸出則okphp --ri xhprof... xhprof xhprof => 0.9.2 CPU num => 4...

安裝graphviz

cd graphviz-2.38.0/#後面參數是要確保安裝了libphp才行哦【沒安裝的 brew install linpng 就可】./configure --with-png=yesmakesudo make install

測試一下了

在之前下載的xhprof檔案夾裡面,找到xhprof_html,xhprof_lib、sample三個檔案夾,那這三個檔案夾放到你可以訪問到得地方去,然後通過串連先訪問以下http://xxxx/sample/sample.php,在訪問以下http://xxxx/xhprof_html/,就會看到有一條記錄,點擊後就可以看到分析結果頁面,通過點擊 View Full CallGraph連結到圖形報表的頁面。

如何使用

假設你現在要看看看自己做的一個網站的首頁效能資料,那麼你要找到這個網站的首頁入口檔案,在核心檔案載入之前和之後分別加上xhprof的效能測試代碼

#開啟,具體參數說明可以查看官方文檔xhprof_enable(XHPROF_FLAGS_NO_BUILTINS | XHPROF_FLAGS_CPU | XHPROF_FLAGS_MEMORY);#核心檔案的執行...require 'index.php'...#關閉$xhprof_data = xhprof_disable();#這裡的路徑根據自己的網站來配置$XHPROF_ROOT = realpath(dirname(FILE) .'/');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, "xhprof");#這裡列印出本次測試的id,方便到報表列表頁面【http://xxxx/xhprof_html/】去通過對應的id找到對應的結果var_dump($run_id);

相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!

推薦閱讀:

PHP實現隨機剔除演算法

Yii2架構資料驗證使用詳解

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.