我正在优化我的网站,并且已经让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
);