2011.09.12_php 优化工具 xdebug
来源:互联网 发布:2015网络银行交易金额 编辑:程序博客网 时间:2024/06/07 14:43
http://www.xuephp.com/main/detail.php?cid=16577
前言:
在我们平时的php开发中,一个大的项目经过长时间的积累以后你会发现性能越来越慢,而性能到底消耗在了什么地方,常常是一个令人头疼的问题,function a()调用了多少次,function b()又消耗了多少时间,我们到底怎么查找是哪个蛀虫拉慢了我们的程序运行速度呢?在这里给大家介绍一款工具xdebug,相信很多人已经听说过了,希望借助这个工具我们可以起到简单分析php程序性能瓶颈的问题。
A)假设1,假设用户目录在/home/ad
B)假设2,假设php目录在/home/ad/php
1、xdebug简介与安装
Xdebug是一个开放源代码的PHP程序调试器(即一个Debug工具),可以用来跟踪,调试和分析PHP程序的运行状况。
1)下载xdebug
xdebug的官方下载地址为:http://xdebug.org/download.php
最新版本为:Xdebug 2.1.0
2)xdebug的安装
cd /home/ad
wget http:
//xdebug.org/files/xdebug-2.1.0.tgz
tar -zxvf xdebug-2.1.0.tgz
cd xdebug-2.1.0
/home/ad/php/bin/phpize
./configure --enable-xdebug --with-php-config=/home/ad/php/bin/php-config
make
make install
安装完以后会提示你扩展安装到了哪个目录,类似 /home/ad/php/lib/php/extensions/no-debug-non-zts-20060613/
假设你的php.ini放在 /home/ad/php/lib/php.ini
加上
[xdebug]
zend_extension =
"/home/ad/php/lib/php/extensions/no-debug-non-zts-20060613/xdebug.so"
xdebug.auto_trace = on
xdebug.auto_profile = on
xdebug.collect_params = on
xdebug.collect_return = on
xdebug.profiler_enable = on
xdebug.trace_output_dir =
"/home/ad/xdebug_log"
xdebug.profiler_output_dir =
"/home/ad/xdebug_log"
重启apache
去/home/ad/xdebug_log下看看是不是日志已经出来了
2、xdebug参数简介
zend_extension 加载xdebug扩展
xdebug.auto_trace 自动打开打开函数调用监测
xdebug.auto_profile 自动打开性能监测
xdebug.trace_output_dir 设定函数调用监测信息的输出文件的路径。
xdebug.profiler_output_dir 设定效能监测信息输出文件的路径。
xdebug.collect_params 打开收集“函数参数”的功能。将函数调用的参数值列入函数过程调用的监测信息中。
xdebug.collect_return 打开收集“函数返回值”的功能。将函数的返回值列入函数过程调用的监测信息中。
3、示例程序与日志收集
<?php
function
a()
{
echo
"aaa"
;
}
function
b()
{
a();
sleep(1);
a();
sleep(1);
a();
}
b();
?>
4、日志分析工具wincachegrind
http://sourceforge.net/projects/wincachegrind/
不用安装直接双击就可以打开了
我们用它打开刚才收集的日志cachegrind.out.***
第一眼就可以看到 我们在mian里面调用了一次b函数,这个函数执行了2秒,如下图
我们双击打开b函数的详细执行情况,可以看到b调用了a函数三次,sleep两次,以及每个函数花费的时间如下图
- 2011.09.12_php 优化工具 xdebug
- 2011.09.12_php 站性能优化
- php性能优化分析工具XDebug 大型网站调试工具
- php性能优化分析工具XDebug 大型网站调试工具
- 大型网站调试工具之一(php性能优化分析工具XDebug)
- 大型网站调试工具之一(php性能优化分析工具XDebug)
- 大型网站调试工具之一(php性能优化分析工具XDebug)
- php xdebug 性能优化
- php优化-xcache-xdebug-memcache
- PHP调试工具 Xdebug + WinCacheGrind
- PHP调试工具Xdebug安装
- PHP调试工具Xdebug安装
- [PHP调试工具]XDebug配置
- Xdebug—php调试工具
- PHP配置调试工具XDebug
- PHP配置调试工具XDebug
- phpstorm 配置 xdebug调试工具
- 揭秘优化php代码42种方法_PHP教程
- 十二周任务四
- 数据库数据导出成excel,excel数据导入数据库
- hadoop出现元数据不能更新且SNN合并失效
- 第十二周任务(三)
- 游戏客户端逻辑应用基础
- 2011.09.12_php 优化工具 xdebug
- 扩展巴科斯范式
- 递推、错排公式
- 实用小方法
- ASP.NET MVC模式 温习(一)排除MVC模式误区
- ZZULI 1679 Switch
- 12.1 理解基类中成员的访问限定符和派生类的限定方式
- 小论万花筒法则(一)
- 提交form会提示下载用JSON返回的以Action为名字的信息,怎么解决这个问题