xdebug

使用Xdebug和KCachegrind分析php的discuz!x2.5运行CPU效率

论坛升级到discuz !x2.5,cpu随时都80-90%,load值居高不下,遂寻找一种检查php代码执行效率的方法
找到的方法php5-xdebug扩展或者xhprof扩展,因为服务器是ubuntu的,所以为了方便快捷,直接使用php5-xdebug来调试和分析了
1 xdebug配置

zend_extension=/usr/lib/php5/20090626/xdebug.so

xdebug.profiler_enable=on
xdebug.trace_output_dir="/tmp/xdebug"
xdebug.profiler_output_dir="/tmp/xdebug"
xdebug.profiler_output_name = cachegrind.out.%s  #cachegrind.out._home_httpd_xxxxx

/tmp/xdebug目录需要手工建立,并且给www用户的读写权限

2 分析xdebug日志
windows环境可以使用WinCacheGrind
  下载地址:http://sourceforge.net/projects/wincachegrind/
linux环境使KCachegrind

Tags: , , ,

星期二, 5 6 月, 2012 服务器, 未分类 没有评论

在PhpStorm中使用Xdebug来调试php断点

用PhpStorm有几个月的时间了,一直没找到一种好的调试断点的方法,今天突然看到这个东西,不错,记录下来

1  从http://code.activestate.com/komodo/remotedebugging/下载mac版本的Komodo-PHPRemoteDebugging-6.0.0-beta3-54627-macosx.tar.gz

2 提取相应php版本的xdebug.so

3 丢到 /usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/ 下面

4 在 /usr/local/php5/lib/php.ini里添加配置文件

[xdebug]
zend_extension=/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so
xdebug.idekey=PhpStorm1
xdebug.remote_enable=On
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp

5 重启apache

6 配置PhpStorm ,ok

Tags: ,

星期四, 12 8 月, 2010 工具 2 Comments
1LMooBmUE153Wnd3zDryWvDyXxQudbFxDr