`

php性能分析工具xhprof的安装使用

 
阅读更多

项目域名:http://www.ajia.com

项目路径:/home/www/

 

1.安装xhprof:

wget http://pecl.php.net/get/xhprof-0.9.2.tgz  

tar zxf xhprof-0.9.2.tgz  

cd xhprof-0.9.2  

cp -r xhprof_html xhprof_lib /home/www/  (复制xhprof_html、xhprof_lib这两个目录到“项目目录”下,此处目的是建立xhprof的数据分析目录,可将此目录配置成虚拟主机访问)  

cd extension/  

phpize (如果没有改命令,先安装php-del)  

./configure  -–with-php-config=/usr/bin/php-config   (php-config的路径需要正常)  

make

make install  (提示安装成功后显示xhprof.so扩展的存放路径)

 

 

2.php.ini配置文件中添加

extension=xhprof.so

xhprof.output_dir=/www/logs/xhprof (这里存放的是xhprof每次性能分析的“记录”的文件,前台显示的数据就来自该文件,该目录必须是“存在且能读写”)

 

 

3.重启php生效xhprof扩展,通过phpinfo()查看是否使用了xhprof扩展

 

 

4.安装libpng包(为了能够通过图例来显示性能分析,可以不安装)

wget http://hivelocity.dl.sourceforge.net/project/libpng/libpng15/older-releases/1.5.15/libpng-1.5.15.tar.gz

tar xvzf libpng-1.5.15.tar.gz && cd libpng-1.5.15

./configure

make

make install

 

 

5.安装graphviz(为了能够通过图例来显示性能分析,可以不安装)

wget http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.24.0.tar.gz

tar zxf graphviz-2.24.0.tar.gz

cd graphviz-2.24.0

./configure --with-png=yes

make

make install

 

 

 

php代码使用示例:

 

在头部(在所有执行php进程开始的地方,一般是头部):

xhprof_enable(); 

//xhprof_enable(XHPROF_FLAGS_NO_BUILTINS); 不记录内置的函数

//xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);  同时分析CPU和Mem的开销

$xhprof_on = true;

 

/*

//生产环境可使用:

if (mt_rand(1, 10000) == 1) {

   xhprof_enable();

   $xhprof_on = true;

}

*/

 

尾部(在所有php进程结束的地方,一般是底部):

if($xhprof_on){

$xhprof_data = xhprof_disable();

$xhprof_root = '/home/www/';  //是上面安装xhprof是否复制两个文件所到的目录,也就是项目目录

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, "hx");

echo '<a href="http://www.ajia.com/xhprof_html/index.php?run='.$run_id.'&source=hx" target="_blank">统计</a>';

}

 

/*

运行程序,底部出现统计字样,点过去就可以看到性能分析了。按运行时间排序,很容易找出化时间最长的函数。点[View Full Callgraph]图形化显示,最大的性能问题会用红色标出,其次是黄色。

*/

 

 

 

输出结果的含义:

 

ct 函数调用次数,

wt 花费的时间,

cpu 花费的 CPU 时间(微秒即百万分之一秒),

mu 使用的内存(bytes),

pmu 使用的内存峰值(bytes)。

 

 

web 分析结果页面含义

 

 

Calls:函数的调用次数

Incl. Wall Time (microsec) :包含内部函数花费的时间,单位微秒

Excl. Wall Time (microsec):不包含内部函数花费的时间,单位微秒

及所占百分比(%)

 

注:Incl.:为 Including 包含的简写

Excl.:为 Excluding 不包含的简写

Wall Time:意为挂钟时间即任务花费的时间

 

main():一个虚构的函数,程序根节点

bar@2:递归调用 2 次

 

Incl. CPU (microsecs):包含内部函数 CPU 花费的时间,单位微秒

Excl. CPU (microsec):不包含内部函数 CPU 花费的时间,单位微秒

Incl. MemUse (bytes):包含内部函数所占内存,单位字节

Excl. MemUse (bytes):不包含内部函数所占内存,单位字节

Incl. PeakMemUse (bytes):包含内部函数所占内存峰值,单位字节

Excl. PeakMemUse (bytes):不包含内部函数所占内存峰值,单位字节

及所占百分比(%)

 

可以认为共三种情况:

1. 包括内部函数

2. 不包括内部函数或者说函数本身

3. 所占总数(时间或内存使用)的百分比

分享到:
评论

相关推荐

    PHP性能分析工具XHProf安装使用教程

    XHProf是一款由Facebook开源的PHP轻量级性能分析工具,与Xdebug类似,但它在性能上的开销更低,特别适合用于生产环境的性能分析,而且能够通过程序控制是否开启性能分析。XHProf支持基于Web的用户界面,方便查看性能...

    windows xhprof php性能测试工具全套

    本篇文章将围绕"windows xhprof php性能测试工具全套"这一主题,详细介绍如何在Windows系统中搭建并使用XHProf。 首先,XHProf的核心在于它的探查器,它可以收集关于PHP脚本运行时的各种信息,如CPU时间、内存消耗...

    mdxhprof是PHP性能测试工具xhprof的升级版与PHP7配合使用

    MD_XHProf是PHP性能分析和优化领域的一个重要工具,它是经典的XHProf的升级版本,专为PHP7设计和优化。XHProf是Facebook开源的一款强大的性能剖析器,能够帮助开发者深入理解代码执行的各个方面,包括CPU使用、内存...

    php轻量级的性能分析工具xhprof的安装使用

    因此,在需要跟踪线上环境的PHP性能时,推荐使用XHProf这一轻量级性能分析工具。XHProf是Facebook开源的性能分析工具,它可以减少性能开销,同时支持灵活的配置,并允许在生产环境中进行性能跟踪分析。 安装XHProf...

    PHP性能测试工具xhprof安装与使用方法详解

    XHProf是PHP中一个强大的性能分析工具,主要用于分析和优化PHP代码。它可以监控函数级别的请求次数和多种性能指标,包括函数执行的阻塞时间、CPU占用时间以及内存使用情况。XHProf通过跟踪函数调用次数和包含性指标...

    wamp+Xhprof+graphviz【可视化PHP性能测试工具安装配置详细流程】

    接下来,我们要介绍的是Xhprof,这是一个由Facebook开发的PHP性能分析器。它能收集关于PHP脚本执行的详细信息,包括CPU使用率、内存占用、函数调用次数等。要安装Xhprof,首先需要下载源码,然后将其解压到PHP的扩展...

    php 轻量级调试工具 xhprof

    XHProf是一款由Facebook开发的PHP性能分析器,它专注于提供轻量级、高效的代码调试和性能分析功能。作为一个开发者工具,XHProf可以帮助我们深入理解PHP应用的运行过程,找出性能瓶颈,从而优化代码,提升网站或服务...

    Xhprof工具使用教程

    xhprof是facebook研发的一款分析php性能的工具,可以分析方法的使用次数以及执行时间等,还可以生成报表

    windows配置xhprof,PHP性能分析工具

    在 http://www.cnblogs.com/strick/p/4699981.html 有描述

    xhprof-php7.zip

    **xhprof:深入理解PHP性能测试工具** xhprof是一款强大的性能分析工具,专为PHP语言设计,用于帮助开发者定位代码中的性能瓶颈。这款工具由Facebook开发并开源,能够提供CPU使用率、内存消耗以及函数调用等各种...

    基于在生产环境中使用php性能测试工具xhprof的详解

    ### PHP性能测试工具xhprof使用详解 #### 1. xhprof概述 xhprof是一款由Facebook开源的PHP性能测试工具,主要用于性能分析和优化。它是一个轻量级的profile工具,用于监控PHP应用程序的性能,如执行时间和内存消耗...

    php_xhprof_0.10.0_PHP_5.3.3_VC6_x86

    标题 "php_xhprof_0.10.0_PHP_5.3.3_VC6_x86" 提供的信息表明,这是一个与 PHP 相关的性能分析工具,具体是 XHProf 的一个版本,适用于 PHP 5.3.3,且是针对 Visual C++ 6 (VC6) 编译器构建的 x86(32位)平台。...

    xhprof-0.9.4

    xhprof-0.9.4是一款广泛应用于PHP性能分析的工具,尤其在官网不再提供下载的情况下,其重要性更加凸显。这款工具的核心功能是帮助开发者定位并优化代码中的性能瓶颈,通过详尽的性能数据报告,为提升应用性能提供了...

    lamp+yum+xhprof(性能分析)配套文件

    配套教程:... 在windows下进行php性能监测调试的工具XHProf; XHProf是facebook出的一个php的调试工具: 相关文档在:http://mirror.facebook.net/facebook/xhprof/doc.html

Global site tag (gtag.js) - Google Analytics