PHP's xdebug和qcachegrind是否记录/报告等待数据库所花费的时间?


Does PHP's xdebug and qcachegrind record/report on time spent waiting for a database?

在Amazon GNU/Linux上使用PHP 5.5

Xdebug正在记录PHP应用程序通过apache worker MPM运行的配置文件数据。

当我使用qcachegrind(在OS X笔记本电脑上运行)查看配置文件数据时,很少有时间归因于php::mysql_*函数。

我知道这个应用程序花费了大量的时间运行数据库查询。

Xdebug没有记录等待数据库的时间,或者我可能没有正确使用qcachegrind来查看在运行PHP内置函数所花费的总时间内等待的时间?

对我来说,运行mysql_query('SELECT SLEEP(5)')导致php::mysql_query函数的自开销约为5000ms,所以是的-它应该报告等待数据库所花费的时间。

请记住,使用xdebug分析器会给PHP的运行增加很多开销,因此报告等待数据库的时间比例可能与不使用分析器时不同(因为PHP的分析不会给数据库引擎本身增加任何开销)。