php性能分析工具xhprof – 基础使用


编	写:袁	亮
时	间:2015-07-24
说	明:php性能分析工具xhprof-基础使用

一、简单介绍
	1、由Facebook开源的一个php性能分析工具
	2、统计函数级别的请求次数,执行时间,阻塞时间,CPU和内存使用情况等
	3、分析一个复杂项目的性能瓶颈时非常有用,很直观的看出问题在哪
	4、也可以用这个来绘制调用的关系图,方便代码理解

二、安装扩展
	1、下载扩展包
		wget http://pecl.php.net/get/xhprof-0.9.2.tgz  
	2、解压
		tar zxvf  xhprof-0.9.2.tgz
	3、安装
		cd xhprof-0.9.2/extension/
		/opt/ci123/php/bin/phpize
		./configure --enable-xhprof --with-php-config=/opt/ci123/php/bin/php-config
		make
		make install
	4、修改php.ini配置文件
		vim /opt/ci123/php/etc/php.ini
		最后,加上:
			[xhprof]
			extension=xhprof.so
			xhprof.output_dir=/tmp/xhprof
		ps:目录需要保证apache有读写权限,最后不能带/,否则会报错
	5、检验是否成功
		/opt/ci123/php/bin/php -m|grep 'xhprof'
	6、重启apache
		/opt/ci123/apache/bin/apachectl -t
		/opt/ci123/apache/bin/apachectl restart

三、自带的范例运行
	1、将解压出来的文件夹,复制到一个apache可访问的目录,extension目录不需要
	2、浏览器访问该目录下的examples/sample.php
	3、查看最后输出的提示,访问对应的链接,有相应的分析,xhprof_html/index.php
	4、出不了图的话,安装下graphviz,默认不支持png,需要再装一个gd的
		yum install graphviz
		yum install graphviz-gd
	
四、简单试用
	1、blog.geekman.vip分析
	2、首页,调用了99,829个函数
	3、可以进行各种排序,查看时间主要耗在哪些函数上
	4、可以查看整个运行过程中的性能瓶颈,图片格式,很直观
	5、范例:
		http://192.168.0.249/xhprof/xhprof_html/?run=55b1de2f8613a&source=xhprof_foo
	
附录:
	http://mirror.facebook.net/facebook/xhprof/doc.html
	http://avnpc.com/pages/profiler-php-performance-online-by-xhprof
	http://www.cnxct.com/you-do-not-have-dot-image-generation-utility-installed/
	

发表评论