使用keepalive时,许多Web服务器速度更快,当然, 客户端必须使用此功能,并且用户必须连续生成多个请求才有用。 我的问题:对于我的网站,我使用Apache,我想知道使用keepalive与不使用keepalive的请求已完成了多少请求。 我查看了access.log文件,但我没有找到任何线索:你知道我怎样才能获得这些信息?
答案 0 :(得分:2)
Eric - 默认日志格式不包含此信息,但有一个%X格式字符串可以告诉您连接的状态。
http://httpd.apache.org/docs/current/mod/mod_log_config.html
您可以添加到自定义日志格式(也在该页面上描述)。还有另一面旗帜,%D也可以提供帮助 - 衡量响应时间。
这并不能完全告诉您所需要的内容 - 然后您需要对请求进行分组(可能在几秒钟内通过IP地址分组),这样您就可以看到单个页面加载中发生的情况(也就是说,html和后续对其他文件和资产的请求。)
但是如果你只是想知道keep-alive是否有帮助,我可以节省你一些时间。
如果您的网页是纯文本并且不包含指向CSS或Javascript或图像的链接,那么keep-alive将无济于事。但那将是非常非常不寻常的。
而且,如果你有一组用户被锁定在时间段中,从1995年开始坚持早期版本的Netscape,那么他们的用户代理就不会使用HTTP 1.1。如果你有现代用户,他们的浏览器支持HTTP 1.1,因此会保持活着。
但实际上,将额外的项目添加到日志中可能是一件好事,可以满足您的好奇心。我有很多人给我这里提供的那种平淡的概括,但是当我实际测量时,发现了一些与预期不同的东西。所以去吧!