【发布时间】:2017-03-11 22:46:22
【问题描述】:
【问题讨论】:
标签: php profiling xdebug qcachegrind
【问题讨论】:
标签: php profiling xdebug qcachegrind
“self”是执行函数的时间,其中没有任何包含(和其他函数调用),“include”是函数执行的整个时间(包括文件、函数等)。举个例子:
function a()
{
b();
c();
}
function b() { // some code }
function c()
{
d()
}
function d() { // some code }
函数 a 自身时间将近似为零,但由于它调用 b 和 c,它的包含时间将最高,并包含 a、b 和 c 的时间。同样 b self 和 include time 将与它不调用任何函数相同。而 c self 大约为 0 并且包含时间大约等于 d 包含时间。
查看您的 qcachegrind,您的代码在 PDO 调用中花费了大量时间。与 SQL 查询相关的内容。您还希望捕获您的 SQL 查询并分析它们以了解它们的运行情况。
输出中同样有趣的是函数被调用的次数。一个函数在性能方面可能是高效的,但如果调用太多次,就会累加起来。查询代码是否有过多的 SQL 查询。
【讨论】: