php性能調試工具介紹


php版本:php7

 

xhprof:

xhprof是php5.*下很好的性能測試工具,配合xhprof_html能夠圖形顯示測試結果,基本夠用,

但已經沒人維護了。

tideways:

在php7下,xhprof不再兼容,於是有個tideways,基於xhprof開發,它是收費的。

安裝后模塊名是tideways,用php --re tideways可以看到很多ini配置,參數和方法,

此模塊很強大,有很多方法和配置用來連接官方服務器,用於收費用戶的后台顯示管理。

同樣,也可以配合xhprof_html顯示結果,也有自己的一套圖形

tideways_xhprof:

它有個開源分支,tideways_xhprof,是免費的,和tideways不同的是,它主要是為了兼容xhprof,

沒有官方那么多配置,安裝后模塊名是tideways_xhprof,方法也就兩個,tideways_xhprof_enable()和

tideways_xhprof_disable(),圖形顯示和tideways相同。

這是一個使用demo:

<?php

//這個require是用與cli下執行php腳本,用xhgui顯示。
//require_once '/home/liuxuzzz/bin/xhgui-branch/external/header.php';

tideways_xhprof_enable(TIDEWAYS_XHPROF_FLAGS_MEMORY | TIDEWAYS_XHPROF_FLAGS_MEMORY_MU | TIDEWAYS_XHPROF_FLAGS_MEMORY_PMU | 
TIDEWAYS_XHPROF_FLAGS_CPU | TIDEWAYS_XHPROF_FLAGS_NO_BUILTINS);

function microtime_float()
{
    list($usec, $sec) = explode(" ", microtime());
    return ((float)$sec + (float)$usec);
}
$start_time = microtime_float();
sleep(1);
$end_time = microtime_float();

$data = tideways_xhprof_disable();

require '/home/liuxuzzz/bin/xhprof/xhprof_lib/utils/xhprof_lib.php';
require '/home/liuxuzzz/bin/xhprof/xhprof_lib/utils/xhprof_runs.php';
// 注意此處的"/tmp",因為如果沒有此參數,XHProfRuns_Default()會使用xhprof.output_dir參數,
// 但是xhprof我沒有安裝,所以配置了沒用,導致執行會報warning
$xhprofRuns = new XHProfRuns_Default("/tmp"); $runId = $xhprofRuns->save_run($data, 'xhprof_test'); echo 'http://localhost/xhprof/index.php?run=' . $runId . '&source=xhprof_test' . "\n";

 

xdebug:

老牌測試工具,很好用,測試環境用這個很方便,但線上用這個性能就太耗了。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM