、安装配置
1、下载PHPXDebug扩展网址:http://xdebug.org/
2、在Linux下编译安装XDebug
引用
tar -xzf xdebug-2.0.0RC3.gz
cd xdebug-2.0.0RC3
/usr/local/php/bin/phpize
./configure --enable-xdebug
cp modules/xdebug.so /usr/local/php/lib/php/extensions/no-debug-non-zts-20020429/
注:/usr/local/php/lib/php/extensions/no-debug-non-zts-20020429/区别PHP版本路径区别也不定要放在该路径可以在zend_extension_ts中自行指定xdebug.so所在位置
引用
vi /usr/local/php/lib/php.ini
修改php.ini去除PHP加速模块增加以下配置信息支持XDebug扩展
[Xdebug]
zend_extension_ts="/usr/local/php/lib/php/extensions/no-debug-non-zts-20020429/xdebug.so"
xdebug.profiler_enable=on
xdebug.trace_output_dir="/tmp/xdebug"
xdebug.profiler_output_dir="/tmp/xdebug"
xdebug.profiler_output_name="script"
引用
mkdir -p /tmp/xdebug
chmod 755 /tmp/xdebug
chown www:www /tmp/xdebug
/usr/local/apache/bin/apachectl -k restart
3、客户端(Windows):WinCacheGrind
下载地址:http://sourceforge.net/projects/wincachegrind/
2、分析过程
1、访问你网站WebSite将首页上各种链接点击几遍XDebug在/tmp/xdebug目录生成以下文件:
usr_local_apache_htdocs_app_checknum_chknum_php_cachegrind.out
usr_local_apache_htdocs_app_login_showHeaderLogin_php_cachegrind.out
usr_local_apache_htdocs_app_play_play_php_cachegrind.out
usr_local_apache_htdocs_app_user_member_php_cachegrind.out
usr_local_apache_htdocs_tag_tags_php_cachegrind.out
usr_local_apache_htdocs_top_top_php_cachegrind.out
2、将以上文件拷贝到Windows上用客户端软件SoftwareWinCacheGrind打开每个文件发现以下PHP执行所耗费时间最长:
/usr/local/apache/htdocs/tag/tags.php 耗时840ms
3、分析结果:
1、/usr/local/apache/htdocs/tag/tags.php
(5)可能造成瓶颈原因:
要过滤156个关键字逐行存放在/usr/local/apache/template/tags/forbidden_tags.txt文件中文本数据库效率不高
逐行读取fgets、以及去除串两边空白或者指定trim在高负载下效率低可以测试fopen、fread、fscanf的类文件读取对比下
最新评论