如何获取php页面加载时间统计信息?

时间:2010-10-17 22:06:09

标签: php apache http statistics lamp

最近我们的LAMP设置出现了问题,我们开始看到MySQL数据库连接的数量不时出现增长。我们怀疑某些mysql操作比平时花费的时间更长,并且apache刚刚开始构建积压的连接来处理传入的请求。

问题是,对于平均加载时间这样的事情,每页的统计数据是否有办法?中位加载时间?每个php页面的最大/最小加载时间(page1.php,page2.php,page3.php等)。这样我们就可以缩小问题所在。作为apache的一部分包含这样的东西吗?也许是一个单独的模块?

2 个答案:

答案 0 :(得分:2)

log format,您只需记录访问日志中的时间(%D),并在事件发生后按时间排序,并检查网址。我不知道任何开箱即用的应用程序,但很多应用程序可以处理apache的访问日志,所以有可能有人可以使用它。我很少查看特定于页面的日志,只查看服务器总数,所以我无法帮助你。

如果MySQL忙/原因:

  1. 如果您已完成连接,请关闭与MySQL的连接,以便更快地释放连接。
  2. 如果确实需要,请增加允许的最大连接数。
  3. 如果您仍有挂起进程,请检查SHOW FULL PROCESSLIST的输出以查看正在执行的查询。
  4. 您可以启用slow_query_log,将所有查询记录在一定数量的毫秒之内(在较新版本中,旧版本仅支持秒数)或不使用索引。命令行工具mysqldumpslow可以准确地对查询进行分组/计数。

答案 1 :(得分:0)

如果您有权访问php.ini,则可以使用Xdebug:http://xdebug.org/