找出PHP代码减速的位置(性能问题)

Rus*_*shi 29 php mysql performance profiling

这是我在SO的第一个问题.

我有一个我公司的内部申请,我最近要求维护.这些应用程序是用PHP构建的,它的编码相当好(OO,DB Abstraction,Smarty),没有WTF-ish.

问题是应用程序非常慢.

我如何找出减缓应用程序速度的因素?我已经优化了代码,只进行了很少的数据库查询,所以我知道这是需要一段时间才能执行的PHP代码.我需要一些可以帮助我的工具,并且需要设计一个检查我的代码的策略.

我可以自己做检查/策略工作,但我需要更多的PHP工具来弄清楚我的应用程序在哪里.

思考?

Jua*_*uan 39

我最近在一个类似的情况下使用过XDebug分析.它输出一个完整的配置文件报告,可以使用许多常见的配置文件应用程序读取(虽然不能给你一个列表,我只使用了slackware附带的那个).


Mat*_*ger 9

正如Juan所说,xDebug很棒.如果你在Windows上,WinCacheGrind会让你查看报告.

  • KCacheGrind(KDE/Linux)要好得多. (2认同)

Pat*_*gan 6

观看Rasmus Lerdorf(PHP的创建者)的演讲.他介绍了一些测试PHP速度和寻找内容的好例子,以及一些可以减慢速度的内部组件.XDebug是他使用的一种工具.他还非常清楚地了解您使用框架获得的性能成本.

视频:http: //www.archive.org/details/simple_is_hard

幻灯片(因为很难在视频中看到):http: //talks.php.net/show/drupal08/1