35

qcachegrind用来查看由Xdebug. 我可以很好地查看文件,但我不知道我在看什么。

我试过谷歌,但我只是不断地得到安装教程,没有关于如何理解显示器的内容。

  1. 下面的 qcachegrind 显示告诉我关于我的应用程序的什么信息
  2. 我可以从此文件中查看更多内容,还是所有可用数据?

(请在新标签中打开图像以获得更好的视图)


在此处输入图像描述

4

1 回答 1

65

类似Xdebug PHP 分析器的输出qcachegrind并可视化的工具。kcachegrind分析器的输出实际上是所有 PHP 函数调用的日志,以及相应的开始时间、执行时间和层次结构。

典型视图如下图所示:

Laravel 应用程序

左侧是“平面轮廓”。它列出了从最耗时到最耗时的所有单个函数调用。“包括”。列显示函数消耗的时间,包括被调用者。'Self' 列显示了函数花费的时间,不包括被调用者。“调用”和“函数”列分别显示函数被调用的次数和函数的名称(加上命名空间)。

在右侧,可以使用各种视图来可视化调用者和被调用者。调用者和被调用者对应于左侧选择的函数。

在顶部的屏幕截图中,“Callee Map”已打开。每个矩形是所选函数(被调用者)内的一个函数调用,其中每个矩形是被调用者的一个被调用者。大小对应于相对的“包含”。时间。

在底部,“所有被调用者”视图按您喜欢的任何属性显示所选函数顺序的被调用者。

更详细的视图如下所示:

调用者和被调用者

这是一个按“自我”时间排序的 Laravel 数据库函数。您可以清楚地看到不同函数调用之间的关系以及占用时间最多的函数:PDOStatement::execute。这并不奇怪,因为它是一个连接到外部数据库、查询它并等待结果的函数。

回到你原来的截图:它告诉你你的应用程序大部分时间都花在了 PHP 的session_start函数上(99.8%)。

于 2016-12-09T23:00:41.643 回答