计算我的服务器执行 HTTP 请求所用时间的最精确方法是什么。我不想知道 DNS 解析或跟踪路由时间,我只想知道服务器执行时间。
答案1
如果您使用的是 apache,则需要从访问日志中监视 %T 值。摘自 apache 文档:
“%T 处理请求所需的时间,以秒为单位。”
您可以在这里找到有关 Apache 日志格式的更多信息:http://httpd.apache.org/docs/2.2/mod/mod_log_config.html#formats
答案2
我认为监控 HTTP 流量的最佳方法是使用 Fiddler(免费)或 HTTPWatch(商业)。这些工具确实可以让你解码流量……这些工具的妙处在于它们甚至会向你显示响应时间
答案3
可以让你非常接近的一种方法是在服务器上运行数据包捕获程序(例如 Wireshark),开始捕获并过滤 HTTP 流量,从客户端计算机访问网站,停止捕获并查找客户端和服务器之间的对话,并计算请求到达服务器和响应离开服务器之间的时间。这应该可以让你得到服务器处理请求的大致时间。
此外,如果您在 Windows 上使用 IIS,则可以在网站上启用日志记录并查看特定客户端\服务器会话的日志。这将告诉您 IIS 处理请求需要多长时间。这应该会让您更接近目标。