怎么样去探测一个页面的响应时间呢?包括DNS的解析时间和网站的加载时间? 
看浏览器都有这种探测结果: 这些探测是怎样做到的呢?很困惑! DNS域名解析  6.18 ms
建立连接     86.09 ms
服务器计算   217.30 ms
下载内容     167.15 ms
如上面的4个指标又怎样去获取呢?

解决方案 »

  1.   

    涉及web性能方面理论的东西不懂啊。但是推荐一个工具可以用,HttpWatch。用用试试,希望对你有帮助。
      

  2.   

    sending就是你发送请求的时间
    waiting就是从发送完请求到收到第一个byte的时间
    receiving就是从收到第一个byte到传输完成的时间DNS域名解析  查询DNS服务器时间,这个不难
    建立连接     建立TCP连接需要握手,从你调用Socket.connect到这个函数返回之间经历的时间就是这个指标
    服务器计算   基本等同于上面的waiting,但不精确。想要精确,你得在服务器上做记录
    下载内容     就是前面的receiving不过以上只是我从各条目命名的推测,仅供参考。。具体是怎么计算的我不清楚。
      

  3.   

    如果你要用代码,网页这边能做的东西很有限,你最多只能记录一个点击按钮的时间,再记录页面下载时间(而且误差比较大),还有下载完成时间(头尾加js,记在cookie里)。其他东西要调用浏览器的API,那就不是网页能做的事情了。
    服务器计算时间可以考虑在网页里面加一个隐藏的元素来记录这个值
      

  4.   

    那就是我之前那个回复的内容了。我不了解http协议,里面也许有sent time之类的数值可以测出服务器计算时间