安装和使用Xhprof

安装xhprof(如果有错误,要make clean,重新编译)

1 下载xhprof

#wget (去官网下载,我没从官网下载,放到yii里就各种不能用,后来重新编译了就好了,如果进行不下去的时候又找不到原因,可以重新编译一下)

#tar zxf xx.gz(下下来的文件)

2  cd xhprof

cd extension

/usr/local/php/bin/phpize(用自己环境里的phpize路径)

./configure --enable-xhprof --with-php-config=/usr/local/php/bin/php-config(你自己环境的php-config路径,路径错了安装肯定失败)

make && make install(如果有报错,记得先make clean 再做重新编译,如果还是不行,就得换个版本重新编译了,这个地方我试了好几遍才成功比较郁闷)

3  新建文件/usr/local/etc/php/php.d/xhprof.ini(或者在php.ini最后加上,都行)

内容:extension=xhprof.so;

xhprof.output_dir=/data/logs/Appstore/Xhprof/

4  打开phpinfo() 查看扩展是否加上(如果没有,重新编译,直到成功为止)

如果不需要显示图,到现在就可以用了,自己建一个xhprof的域名,然后到example里的sample.php里进行测试就行了

如果需要显示图,那接着往下走

安装png(确认线上是否有libpng扩展,如果有就不需要安装了)

1 wget http://nchc.dl.sourceforge.net/project/libpng/libpng15/1.5.1/libpng-1.5.1.tar.gz

2 tar zxf libpng-1.5.1.tar.gz

3 cd libpng-1.5.1

4 ./configure --with-php-config=/usr/local/php/bin/php-config

5 make

6 make install

安装完以后开始装Graphviz

安装Graphviz

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

2 tar zxf graphviz-2.24.0.tar.gz

3 cd graphviz-2.24.0

4./configure  --with-php-config=/usr/local/php/bin/php-config --with-png=yes

5  make

6 make install

完成以后如果生成/usr/bin/dot则成功

这时候你会发现图还是显示不出来,提示dot - png fail,是说他找不到dot的路径,到你的xhprof/xhprof_lib/utils/callgraph_utils.php 里的dot路径为/usr/bin/dot(你自己生成的dot地址)

这时候图基本上就出来了

见下面的图,是不是很壮观,出来的时候成就感爆棚

下面说怎么融合到你自己的代码里面去

在分析时跳过内置函数 xhprof_enable(XHPROF_FLAGS_MEMORY ,array(‘ignored_functions‘ => array(‘call_user_func‘,‘call_user_func_array‘)));

使用机制:

我是自己封装了个类,也可以直接用

在函数的开头调用类以后会在你的xhprof.output_dir里生成一个文件

在/data/logs/Appstore/Xhprof/下会生成比如54a3a2606e75b.top-size-10-page-1-list.json.xhprof的文件,

如果            $run_id = $xhprofRuns->save_run($xhprofData, $name); 这个name默认是xhprof_foo,如果你想在生成的文件里直接看到是哪个接口生成的解析文件,

可以在这块指定name,我是这样做的

$name = str_replace(‘/‘, ‘-‘, $_SERVER[‘REQUEST_URI‘]);

$name = substr($name, 1);

$xhprofRuns = new XHProfRuns_Default();

$run_id = $xhprofRuns->save_run($xhprofData, $name);

然后根据你自己配置的域名就可以看效果了,比如

访问http://xxx/xhprof_html/index.php?run=54a3a2606e75b&source=top-size-10-page-1-list.json(这块的source是你自己定义的name,如果没定义,就不用改,如果不改,会看不到内容)就可以看到了

点view full callgraph就可以点击图片看细节了,比较清晰明了

http://xxx/xhprof_html/callgraph.php?run=54a3a2606e75b&source=top-size-10-page-1-list.json

时间: 2024-10-07 03:14:36

安装和使用Xhprof的相关文章

xhprof 的安装方法以及xhprof 的使用方法(分析php程序)

1.xhprof的安装方法. 从git上下载xhprof,路径为https://github.com/kungyu/xhprof. cd xhprof/extension phpize ./configure --with-php-config=/usr/local/php/bin/php-config //路径为php-config的实际路径. make && makeinstall make test make test 会提示有几个被禁用的php函数开启. 将安装包里面的两个文件夹

windows下安装php性能分析工具XHProf

一.安装扩展 下载XHProf扩展:http://dev.freshsite.pl/php-extensions/xhprof.html 放入扩展文件:下载后解压出.dll文件,拷贝它到php的ext文件夹里面. 开启扩展:php.ini中加入下面的代码 [xhprof] extension=xhprof.dll xhprof.output_dir="F:/xhprof/xhprof_log" 二.安装php分析包 这个扩展需要一个php程序来调用. 百度网盘下载:http://pan

PHP性能追踪及分析工具xhprof的安装与使用

https://segmentfault.com/a/1190000007288664(原文地址) 对于本地开发环境来说,进行性能分析xdebug是够用了,但如果是线上环境的话,xdebug消耗较大,配置也不够灵活,因此线上环境建议使用xhprof进行PHP性能追踪及分析. 我们今天就简单介绍一下xhprof的简单安装与使用 xhprof的安装 下载xhprof,我们这里选择的是通过git clone的方式,当然你也可以从 http://pecl.php.net/package/x... 这里下

让程序员不再苦逼的神器(上)

乘风破浪,启航未来! 做程序猿「媛」是一个苦逼的活,大周六地早起在技术群里招呼,看到没有啥人响应,说了一句,「估计都没有醒」,然后一位哥们抛过来,「在加班」 ! 做 Web 开发更是一个苦逼的活,不像是做 iOS,搞定客户端,基本上就万事大吉了.做 Web 开发不仅仅是要做后端,前端也需要了解和熟悉! 做前后端通吃的 DevOps 全栈工程师绝对是最苦逼的活,不但需要做开发,而且还要了解运维.优化,不会运维的工程师绝对不是一个好架构师! 但所幸的事,一个优秀的工程师尽管很忙,尽管要熟悉前后端.系

XHProf的安装和使用(PHP性能测试神器)

XHProf是Facebook开发的性能调试工具,帮助我们的PHP程序性能调优,更加健壮.XHProf安装和使用方法将在本章讲解.XHProf是PHP的PECL扩展.没有XDeBug那些耗费资源,更加的小巧. 流程:程序开头打点,结尾打点.那么XHProf机会记录在两个点之间的所有代码响应时所耗费的时间.内存.CPU等各项指标,我们也可以知道一次请求调用了多少次MySQL,多少次Memcache,更加直观的指明优化道路. 安装: ------------下载并编译PHP-XHProf源码----

【转】给Windows + Apache 2.2 + PHP 5.3 安装PHP性能测试工具 xhprof

原文链接:http://blog.snsgou.com/post-816.html 1.下载XHProf 到这里 http://dev.freshsite.pl/php-extensions/xhprof.html 下载Windows版本的XHProf,我这里选择下载 XHProf 0.10.3 for PHP 5.3 vc9 和 xhprof_html 2.安装XHProf 把压缩包里的 xhprof_0.10.3_php53_vc9.dll 拷贝到PHP的ext目录下,然后在php.ini配

使用非root用户在RedHat 4下安装XHProf

XHProf是一个PHP性能分析工具.我采用的XHProf版本为0.9.4,下载地址:http://pan.baidu.com/s/1jGGgYMi 以下是在RedHat 4.4.7环境下安装.配置和测试XHProf的步骤.在有的RedHat版本上也通过了安装.这里选择的是非root用户安装,所以步骤可能繁杂了一些. 1.首先需要安装好Apache和PHP两个工具.此为安装XHProf之基础. 2.不过,还有两个“部件”需要安装.一个是m4,一个是autoconf,这两个是做什么的,我并不清楚.

centos6 安装xhprof扩展

首先配置yum源 追加CentOS 6.5的epel及remi源 # rpm -Uvh http://ftp.iij.ad.jp/pub/linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm # rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm 检查已安装的php包 # yum list --enablerepo=remi --enablerepo=re

Xhprof安装笔记(PHP性能监控)

Xhprof是facebook开源出来的一个PHP性能监控工具,占用资源很少,甚至能够在生产环境中进行部署. 它可以结合graphviz使用,能够以图片的形式很直观的展示代码执行耗时 wget http://pecl.php.net/get/xhprof-0.9.4.tgz tar zxvf xhprof-0.9.4.tgz cd xhprof-0.9.4/extension/ /usr/bin/phpize ./configure --with-php-config=/usr/local/ph