版本 | V1.0 |
编写日期 | 2013.7.5 |
编写人 |
关于 XHProf
XHProf 是 FaceBook 开发的一个函数级别的 PHP 分层分析器。数据收集部分是一个基于 C 的 PHP 扩展,分析报告是一系列基于 PHP 的 HTML 导航页面。XHProf 能统计每个函数的调用次数、内存使用、CPU占用等多项重要的数据。并且 XHProf 还能比较两个统计样本,或从多个数据样本中汇总结果。XHProf 是分析 PHP 程序执行效率的利器,能让我们得到更底层的的分析数据。
安装测试使用xhprof
1.下载(下载最新版本)
wgethttp://pecl.php.net/get/xhprof-0.9.3.tgz
tar zxf xhprof-0.9.3.tgz
2.安装
1)解压后进入目录,下面有一个extention文件夹
>cp -r xhprof_html xhprof_lib <web服务器的根目录>
> cd xhprof-0.9.2/extention/
2)用phpize安装,首先找到php的安装路径下的bin下的phpize如: /usr/local/php/bin/phpize
> /usr/local/php/bin/phpize
3) ./configure --with-php-config=/usr/local/php/bin/php-config
4) make && make install
最后会输出生成的.so文件的目录如:/usr/local/php/lib/extentions/no-debug-none-zts-20090626/xhprof.so
3.配置
> vi /usr/local/php/lib/php.ini
加入如下三行:
[xhprof]
extension=xhprof.so
xhprof.output_dir=<这里是设置xhprof_log文件的目录>
4.重起php-fpm与nginx后查看phpinfo:
> /usr/local/php/bin/php -m | grep xhprof
可以查看phpinfo里的xhprof是否已安装.
5.使用xhprof
1) 在待测php文件中加入如下函数:
xhprof_enable(); //统计的代码部分之前加
如需要监测CPU和内存,则为xhprof_enable(XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);
xhprof_disable();//统计的代码部分之后加
例如:
2)通过xhprof_html目录的http访问url来查看结果。如:http://<域名>/xhprof_html/?run=id&source=命名空间
例如:以whm.imp.com为例
6.安装graphviz用以支持图形查看:(此步骤可省)
1)下载http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.28.0.tar.gz
2)解压后安装
./configure
make && make install