欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

使用xhprof在开发环境中测试php性能

程序员文章站 2022-04-26 20:03:08
...
XHProf是一个分层PHP性能分析工具。它报告函数级别的请求次数和各种指标,包括阻塞时间,CPU时间和内存使用情况。现在我们来聊聊XHProf在开发环境中如何测试php性能。

以百分之一的概率产生测试数据,尽量不影响正式环境效率。

class XHProf {
    // private $XHProfPath = 'xhprof/';
    private $XHProfPath = '/usr/local/apache/htdocs/xhprof/';
    private $applicationName = 'sias_application';
    private $sampleSize = 100;
    private static $enabled = false;
    public function XHProf_Start() {
        if (mt_rand(1, $this->sampleSize) == 1) {
            include_once $this->XHProfPath . 'xhprof_lib/utils/xhprof_lib.php';
            include_once $this->XHProfPath . 'xhprof_lib/utils/xhprof_runs.php';
            xhprof_enable(XHPROF_FLAGS_NO_BUILTINS + XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);
            self::$enabled = true;
        }
    }
    public function XHProf_End() {
        if (self::$enabled) {
            $XHProfData = xhprof_disable();
            $XHProfRuns = new XHProfRuns_Default();
            $XHProfRuns->save_run($XHProfData, $this->applicationName);
        }
    }
}

测试效果:

Overall Summary     
Total Incl. Wall Time (microsec):     48,162 microsecs
Total Incl. CPU (microsecs):     32,994 microsecs
Total Incl. MemUse (bytes):     2,773,464 bytes
Total Incl. PeakMemUse (bytes):     2,867,664 bytes
Number of Function Calls:     749

使用xhprof在开发环境中测试php性能

使用xhprof在开发环境中测试php性能

从以下测试结果看出,耗时最多的居然是连接数据库,所以我们来尽量优化数据库。

本文地址:

转载随意,但请附上文章地址:-)

相关标签: include