如何探测一个网站的响应时长?
怎么样去探测一个页面的响应时间呢?包括DNS的解析时间和网站的加载时间?看浏览器都有这种探测结果:
这些探测是怎样做到的呢?很困惑!
DNS域名解析 6.18 ms
建立连接 86.09 ms
服务器计算 217.30 ms
下载内容 167.15 ms
如上面的4个指标又怎样去获取呢?
--------------------编程问答-------------------- make --------------------编程问答-------------------- 我们网站投产的时候用的压力测试网站貌似这个什么响应时间啊,吞吐量啊什么的,都能统计出来的 --------------------编程问答-------------------- 涉及web性能方面理论的东西不懂啊。但是推荐一个工具可以用,HttpWatch。用用试试,希望对你有帮助。 --------------------编程问答-------------------- 我不是要去统计或看性能,而是要用代码统计出那些指标 --------------------编程问答-------------------- sending就是你发送请求的时间
waiting就是从发送完请求到收到第一个byte的时间
receiving就是从收到第一个byte到传输完成的时间
DNS域名解析 查询DNS服务器时间,这个不难
建立连接 建立TCP连接需要握手,从你调用Socket.connect到这个函数返回之间经历的时间就是这个指标
服务器计算 基本等同于上面的waiting,但不精确。想要精确,你得在服务器上做记录
下载内容 就是前面的receiving
不过以上只是我从各条目命名的推测,仅供参考。。具体是怎么计算的我不清楚。 --------------------编程问答-------------------- 如果你要用代码,网页这边能做的东西很有限,你最多只能记录一个点击按钮的时间,再记录页面下载时间(而且误差比较大),还有下载完成时间(头尾加js,记在cookie里)。其他东西要调用浏览器的API,那就不是网页能做的事情了。
服务器计算时间可以考虑在网页里面加一个隐藏的元素来记录这个值 --------------------编程问答-------------------- 另外这不是JavaSE版吗 --------------------编程问答--------------------
要做的就是JavaSE版 --------------------编程问答-------------------- 那就是我之前那个回复的内容了。我不了解http协议,里面也许有sent time之类的数值可以测出服务器计算时间 --------------------编程问答-------------------- 时间戳啊
补充:Java , Java SE