ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

使用xdebug+webgrind分析php性能

2021-09-12 21:34:40  阅读:238  来源: 互联网

标签:xdebug webgrind profiler so php data


xdebug是php的一个调试工具扩展,webgrind是一个通过web可视化方式来查看xdebug日志的工具,两个加起来,对于查找PHP整个系统中的性能瓶颈非常有用。
安装xdebug:https://xdebug.org/download.php 根据自己php版本选择和下载对应的xdebug

# wget http://xdebug.org/files/xdebug-2.4.1.tgz
# tar zxf xdebug-2.4.1.tgz
# cd xdebug-2.4.1

开始编译xdebug.so文件,注意自己phpize和php-config的位置,可使用whereis查找

# /data/php/bin/phpize
# ./configure --with-php-config=/data/php/bin/php-config
# make && make install

编译安装后.so文件在当前目录中的modules目录中,可以放这也可以移走。

配置php.ini

zend_extension="/data/php/lib/php/extensions/xxxxxxx/xdebug.so"
[xdebug]
xdebug.profiler_append=0
xdebug.profiler_output_name="cachegrind.out.%R%u"
xdebug.profiler_enable=On
xdebug.profiler_output_dir="/data/xdebug/"
xdebug.profiler_enable_trigger=On

注意xdebug的so需要使用zend_extension引入,后面写绝对路径
其它配置信息自行查询
重启php-fpm

# kill -INT `cat /data/php/run/php-fpm.pid`
# /data/php/sbin/php-fpm

访问phpinfo() 看看是否加载成功

浏览器中直接访问QQ购买webgrind即可,webgrind自动遍历xdebug所配置的日志目录,可显示每一步的调试耗时、耗时占比,也可以直接查看调用所在的代码位置,服务器安装了dot的话( sudo apt-get install graphviz ),也可以点击“show call graph”按钮以svg图像方式查看整个调用树,对于要查找系统哪个位置执行慢的问题非常给力。

标签:xdebug,webgrind,profiler,so,php,data
来源: https://blog.csdn.net/wubaohu1314/article/details/120256288

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有