docker内php使用xdebug性能分析
官方文档 Xdebug: Documentation » Profiling
以下操作都以macbook环境为例
docker内php安装xdebug
pecl install xdebug
docker-php-ext-enable xdebug
本地php安装xdebug
pecl install xdebug
成功后提示
Build process completed successfully
Installing '/usr/local/Cellar/php@7.2/7.2.34_2/pecl/20170718/xdebug.so'
install ok: channel://pecl.php.net/xdebug-3.1.5
Extension xdebug enabled in php.ini
执行 php --ini 查看php所使用的配置路径
本地编辑php.ini文件,docker内编辑配置路径下 docker-php-ext-xdebug.ini, 例如
vi /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini
docker内可能会提示无法使用vi命令,可执行一下命令安装
apt-get update
apt-get install vim
完成后编辑xdebug相关配置
zend_extension=xdebug
xdebug.mode=profile
xdebug.start_with_request=XDEBUG_TRIGGER // 可选,如果不配置这个所有访问都会生成分析文件,启用的话可通过url参数的形式来触发分析,例如 http://localhost/inde.php?XDEBUG_TRIGGER
xdebug.output_dir=/www //分析脚本输出目录,docker内的话需要将地址改为docker内与本地目录映射的地址
xdebug.use_compression=false
然后重启本地php或者docker php
安装xdebug脚本分析软件
brew install qcachegrind
启动命令 qcachegrind
然后调用需要分析的api,会在上面设置的 xdebug.output_dir 目录里生成xdebug分析文件,在qcachegrind里打开分析文件即可看到分析内容
我本地是php7.2的,之前通过brew install php@7.2 安装的
上面执行完后php无法正常运行了,提示
dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.68.dylibReferenced from: /usr/local/opt/php@7.2/bin/phpReason: image not found
[7] 63371 abort php -m
我猜是安装qcachegrind导致的,解决办法,只有重装php
brew upgrade php@7.2
==> Upgrading 1 outdated package:
php@7.2 7.2.34_2 -> 7.2.34_4
Error: php@7.2 has been disabled because it is deprecated upstream!
因为我不想换版本,本来想直接通过升级来解决,但是官方brew又不支持php7.2了,只有想其他办法来重装.
先卸载原来的php
brew services stop php@7.2
brew uninstall php@7.2
重装php7.2
brew tap shivammathur/php
brew install shivammathur/php/php@7.2
安装成功提示
The php.ini and php-fpm.ini file can be found in:/usr/local/etc/php/7.2/
php@7.2 is keg-only, which means it was not symlinked into /usr/local,
because this is an alternate version of another formula.
If you need to have php@7.2 first in your PATH, run:echo 'export PATH="/usr/local/opt/php@7.2/bin:$PATH"' >> ~/.zshrcecho 'export PATH="/usr/local/opt/php@7.2/sbin:$PATH"' >> ~/.zshrc
For compilers to find php@7.2 you may need to set:export LDFLAGS="-L/usr/local/opt/php@7.2/lib"export CPPFLAGS="-I/usr/local/opt/php@7.2/include"
To restart shivammathur/php/php@7.2 after an upgrade:brew services restart shivammathur/php/php@7.2
Or, if you don't want/need a background service you can just run:/usr/local/opt/php@7.2/sbin/php-fpm --nodaemonize
然后根据上面提示,启动php7.2
brew services start shivammathur/php/php@7.2
惊奇的发现之前安装的php扩展都还在,什么都不用改,很nice.
docker内php使用xdebug性能分析相关推荐
- 第41讲:MySQL内置的QL性能分析工具
文章目录 1.SQL性能分析的概念 2.分析数据库中SQL的执行频率 3.数据库中的慢查询日志 3.1.开启慢查询日志功能 3.2.模拟慢SQL查询观察日志内容 4.Profile查看SQL每个阶段的 ...
- go build 无文件_Go学习_30_Golang代码性能分析工具
Golang内置了一些性能分析工具,可以将性能分析的结果文件输出,我们可以使用图形化的工具查看分析结果,在使用这些工具之前,我们需要安装一些工具,以便于查看分析文件. 为了支持查看图形化分析结果,首先 ...
- 算法与数据结构(part2)--Python内置类型性能分析
学习笔记,仅供参考 文章目录 算法与数据结构--基于python Python内置类型性能分析 timeit模块 计时器类timeit.Timer 计时器类下的timeit.Timer.timeit方 ...
- java dump分析工具_Java 性能分析工具 (2):Java 内置监控工具
引言 本文为 Java 性能分析工具系列文章第二篇,第一篇:操作系统工具.在本文中将介绍如何使用 Java 内置监控工具更加深入的了解 Java 应用程序和 JVM 本身.在 JDK 中有许多内置的工 ...
- php性能分析工具 - xhprof的安装使用
一.前言 有用的东西还是记录下来吧,也方便以后的查询:这次记录一下xhprof的安装使用: xhprof是facebook开源出来的一个php轻量级的性能分析工具,跟Xdebug类似,但性能开销更低, ...
- Jvisualvm--JAVA性能分析工具
JDK自带的JAVA性能分析工具.它已经在你的JDK bin目录里了,只要你使用的是JDK1.6 Update7之后的版本.点击一下jvisualvm.exe图标它就可以运行了. 这里是VisualV ...
- php轻量级的性能分析工具xhprof的安装使用
之前一直使用基于Xdebug进行PHP的性能分析,对于本地开发环境来说是够用了,但如果是线上环境的话,xdebug消耗较大,配置也不够灵活,因此线上环境建议使用xhprof进行PHP性能追踪及分析. ...
- Go 服务进行自动采样性能分析的方案设计与实现
线上服务的性能分析,一直以来都是比较难的点,主要是难在无法在性能出现异常的当时捕捉到现场信息.有人可能会说,这有什么难的,直接用 Go 工具集里的 pprof 访问一下,进行采样拿下来分析就行了.话虽 ...
- 鲲鹏devkit(迁移 测试 性能分析) boostkit
一 devkit 1 业务:不同环境下的开始.测试.部署.迁移.监控项目 2 需求:x86服务器.x86处理器.复杂指令集迁移到鲲鹏服务器.鲲鹏处理器.简洁指令集.调试调优. 3 解决方案: (1)功 ...
最新文章
- SVN冲突出现原因及解决方法浅谈
- 让 ScrollViewer 的滚动带上动画
- 让delphi程序不受WINDOWS日期格式的影响
- 学习《apache源代码全景分析》之过滤器部分摘录
- 【测试】模拟一个全表扫描的sql,对其进行优化走索引,并且将执行计划稳定到baseLine。...
- 使用SQL Storage Compress压缩SQL Server 数据库文件
- symantec BESR 异机恢复
- QT QAudioOutput+QIODevice 音频流实时播放
- win7提示由于系统注册表文件丢失或损坏,无法开机
- java中将字符串转换为URL能解析的编码
- the7_v610优化破解演示数据
- Python实现分解质因数
- 歪歪在去往宝石的路上,步履蹒跚中-1
- 2021全国职业技能大赛-网络安全赛题解析总结②(超详细)
- 【Java学习】JUC并发编程
- 花千芳口出狂言说英语没用,王思聪怒怼他!在线英语培训越来越重要!
- 处理器最新排行_鲁大师Q2季度PC硬件排行:Intel十代酷睿初入战局,最受欢迎CPU是它...
- 《网络攻防》Web基础
- excel下拉菜单创建
- 识别win10和linux的MBR,Win10下安装ElementaryOS双系统:UEFI和Legacy引导