资讯专栏INFORMATION COLUMN

使用 Xdebug 生成 php 的 Profiler

liukai90 / 2342人阅读

摘要:在可以使用你最喜欢的包管理器安装。用户可以选择性的使用。目前不支持引入的文件格式的的文件和函数压缩。如果你不能使用或者不想使用的包,可以用脚本,它能从分析器跟踪文件生成输出。

说明

以下内容摘抄自 profiling PHP 脚本

xdebug 的 profiler 是一个强大的工具,它能分析 PHP 代码,探测瓶颈,或者通常意义上来说查看哪部分代码运行缓慢以及可以使用速度提升。Xdebug 2 分析器输出一种兼容 cachegrind 文件格式的分析信息。这允许你能使用出色的 KCacheGrind 工具(Linux,KDE)来分析你的 profiling 数据。在 Linux 可以使用你最喜欢的包管理器安装 KCacheGrind。

在 windows 系统上,有预编译的 QCacheGrind 二进制程序(QCacheGrind 是没有 KDE 绑定的 KCacheGrind)。

在 Mac OSX 系统上,这里也有怎样安装 QCacheGrind 的说明。

Windows 用户可以选择性的使用 WinCacheGrind。它的功能不同于 KCacheGrind,所以 这个页面的 KCacheGrind 使用文档章节不适用于这个程序。WinCacheGrind 目前不支持 Xdebug 2.3 引入的 cachegrind 文件格式的的文件和函数压缩。

这也有一种可替代 profile 信息演示的工具叫做 xdebugtoolkit。一款基于 web 前端叫做 Webgrind,和一款基于 java 的工具叫做 XCallGraph。

如果你不能使用 KDE(或者不想使用 KDE)的 kcachegrind 包,可以用 perl 脚本 "ct_annotate",它能从分析器跟踪文件生成 ASCII 输出。

配置 1) Xdebug 配置

这里依旧使用最小化配置

; profiler
xdebug.profiler_enable = 0;            ; 关闭永久生成profiler
xdebug.profiler_enable_trigger = 1;    ; 启用 session 触发 profiler
xdebug.profiler_output_dir = "/data/profiler_dir"   ; 输出的目录
zend_extension = "/usr/local/opt/php70-xdebug/xdebug.so"

配置完成之后重启 php-fpm 或者 apache

2) 安装 xdebug 工具

安装 chrome 扩展 Xdebug helper

3) 启用 Xdebug helper 的 profiler 工具

4) 刷新页面, 查看设定的文件夹

在上边设定的文件夹中会生成 profiler 文件

5) 使用工具来分析 profiler 文件

这里我使用 phpstorm 的分析工具来查看

Tools > Analyze Xdebug Profiler Snapshot

选择生成的 输出文件, 可以看到文件的解析信息, 这个对于分析自己写的php代码会有很大益处

参考文档

profiling PHP 脚本

Enabling Profiling with Xdebug

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/25928.html

相关文章

  • 简杰php编程分享-1.3 xdebug性能分析

    摘要:生成性能分析文件,再通过分析软件进行查看性能结果。性能分析工具详解我们通过打开性能分析文件打头的文件。可以很好的区分性能分析文件。 介绍 在上两期中我已经对 xdebug 最核心的操作已经进行了讲解。相信你可以摆脱写 var_dump($data);die; 的编写和完成调试后的清除了。这一期我们来学习xdebug的第二个特色-性能分析。这一个功能,在实操中用的不是很多。 使用场景: ...

    Michael_Lin 评论0 收藏0
  • Linux CentOS 安装 PHP5.5 Redis XDebug Nginx MySQL

    摘要:启动服务查看版本执行执行安装安装完成启动安装修改配置例子关键字去修改查看是否安装成功安装下载地址上传到目录安装完成之后,出现下面的安装路径配 启动ssh服务 service sshd start yum -y update 查看centos版本 centos 5 执行: rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rp...

    glumes 评论0 收藏0
  • Linux CentOS 安装 PHP5.5 Redis XDebug Nginx MySQL

    摘要:启动服务查看版本执行执行安装安装完成启动安装修改配置例子关键字去修改查看是否安装成功安装下载地址上传到目录安装完成之后,出现下面的安装路径配 启动ssh服务 service sshd start yum -y update 查看centos版本 centos 5 执行: rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rp...

    vslam 评论0 收藏0

发表评论

0条评论

liukai90

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<