【发布时间】:2010-11-11 16:09:43
【问题描述】:
是的,自从观看Rasmus Lerdorf's talk on PHP performance 以来,我一直想分析我正在开发的 ERP / 会计应用程序,尤其是因为我知道它存在性能问题,分析应该突出我要调查的主要问题。
所以下载了xdebug并将以下几行放入我的php.ini文件中:
zend_extension="/usr/lib/php5/20090626+lfs/xdebug.so"
xdebug.profiler_output_dir="/home/me/xdebug/profiles/"
xdebug.ptofiler_enable_trigger=On
有了这个,我只需将我的浏览器作为我的应用程序,在查询字符串中使用 &XDEBUG_PROFILE 并开始分析。问题是我使用 KCacheGrind 查看的输出不包含我的应用程序中的任何功能,并且实体之间没有流动。
当页面执行时,我将配置文件(在终端中)复制到一个单独的文件中,以在整个配置文件中捕获它的状态。我将它们分别加载到 KCacheGrind 中,它们都显示了应用程序的完整配置文件,除了最后一个?
谁能告诉我为什么没有输出完整的个人资料?查看我复制文件的文件大小,前几个文件似乎相当大,但最后一个文件要小得多,xdebug 被捕获后是否在搞乱它们?
非常感谢:-)
编辑
只是为了提供帮助,这是我在打开其中一个复制的配置文件时看到的(在配置文件完成之前),我相信还有更多内容。
这就是我从最终配置文件中得到的,没有任何关系,只是一堆 PHP 函数。我想查看所有完整的个人资料。
编辑 2
所以在这里我不断地运行ls -als 命令,最后一个列表是缩减版本,上一个是最后一个ls 文件在它的完整大小。
我无法上传大文件,因为它的长度超过 300 万行,如果有帮助,请参阅 xdebug php 信息部分。
【问题讨论】:
-
你可以考虑另一种方法:stackoverflow.com/questions/3756446/…
-
链接好像坏了,你引用的是这个视频吗? vimeo.com/13768954
标签: php performance optimization xdebug