我正在优化我的网站,并且已经让MySQL慢查询登录了几天,但是经过超过2.6亿次查询后,它仅记录了6个慢查询,这些是我在phpMyAdmin上执行的特殊查询。我想知道是否有一些日志记录缓慢的PHP页面执行时间,以便可以找到占用资源而不是特定查询的某些页面。

最佳答案

首先,有xdebug,它具有一个探查器,但是我不会在生产机器上使用它,因为它会注入(inject)代码并加快抓取速度。不过,非常适合测试环境。

如果您想在生产环境中测量速度,我只是手动进行测量。 microtime() 是PHP中用于这些功能的函数。假设您有一个header.php和footer.php,它们被所有php脚本调用:

# In your header.php (or tpl)
$GLOBALS['_execution_start'] = microtime(true);

# In your footer.php (or tpl)
file_put_contents(
    '/tmp/my_profiling_results.txt',
    microtime(true) - $GLOBALS['_execution_start'] . ':' . print_r($_SERVER, true) . "\n",
    FILE_APPEND
);

10-08 08:32
查看更多