WinCacheGrind配合XDebug分析PHP程序性能

转自:http://www.nowamagic.net/librarys/veda/detail/2338

使用WinCacheGrind来分析php的执行时间和效率,需要安装XDebug这个扩展。如果对XDebug不太了解的话,请先看《PHP调试利器XDebug的安装与使用》这篇文章。

WinCacheGrind是windows下的profile查看程序。所谓profile,就是程序或软件保存的档案资料,这里的profile就是xdebug生成的Log文件。WinCacheGrind 下载地址:http://sourceforge.net/projects/wincachegrind

前面说到的这篇文章已经介绍了使用XDebug时,对php.ini的配置。但是就算XDebug配置完毕,WinCacheGrind也未必能使用。请确保在php.ini文件有这么两处配置:

1 ;xdebug.profiler_enable = 0//默认是0,要改掉
2xdebug.profiler_enable = on
3 ;xdebug.profiler_output_name ="xdebug_profile.%R::%u"//这个格式WinCacheGrind用不了
4 xdebug.profiler_output_name ="cachegrind.out.%p"

加了这两行,WinCacheGrind就能使用了。补一个全的:

1extension=php_xdebug.dll
2xdebug.profiler_enable=on
3 xdebug.trace_output_dir="X:\Projects\xdebug"
4 xdebug.profiler_output_dir="X:\Projects\xdebug"
5 xdebug.profiler_output_name ="cachegrind.out.%p"

最后一行主要是为了和wincachegrind.out整合。

打开WinCacheGrind,将"Tools"=>"Options" =>"Main"的"working flolder" 设置为php.ini中指定xdebug.profiler_output_dir路径。然后刷新一下本地的网页,应该就可以看到下面的监控文件了。

打开在那个目录中生成的 cachegrind.out.* 就可以看到每一个过程调用执行了多长时间。

使用的话比较简单,展开左侧的树形菜单,寻找最耗时的操作,然后找到代码,就可以针对性开始优化了。比如下面对CI框架的一个应用进行性能分析

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值