做好的项目反应时间比较长,前几天做了个测试,测试工具给出了个时间,叫做Receive,测试组给的关于这个时间的解释是:客户端从收到第一个字节开始,到页面下载完毕这个时间,叫做Receive时间。这个时间总是特别长,极端的时候达到5秒多些。一开始,我觉得,这个问题可能主要是网络传输的问题,应该从压缩页面大小的方面来考虑。但是今天,我看了个MSDN WebCast里苏鹏的教程,那里面给一个叫做“执行时间”的名词的定义是:处理一个请求所需的时间,通常按服务器向客户端返回的第一个字节和最后一个字节之间的时间计算。这个意思是说当客户端开始下载时,服务端的处理还没有结束么?那么在这个被他们叫做Receive,又叫做“执行时间”的时间区间里,服务器又都做了些什么呢?能告诉俺怎么去监视这个,也一样感谢。谢谢了先。

解决方案 »

  1.   

    如果是普通页面 在pageload事件所有程序开始执行之前里面写个开始时间,在页面所有程序执行完之后最后一句写个结束时间,两者一减,就是执行时间了,response出来看一看就知道是程序执行时间过长的问题还是网络传输的问题。
    当然拉,这个方便并不精确,但是很有效果的。
      

  2.   

    这样好象模拟不了线上的网站的情形吧````,关键问题是,那个Receive的时间,该怎么理解?
    服务器到底是边处理边发送呢,还是处理完全完成后才开始回送数据的呢?
      

  3.   

    启用跟踪功能,在@Page指令中设置Trace属性
      

  4.   

    那么,现在简化一下这个问题,这个Receive的时间里,服务器到底做了什么?或者说:服务器是边处理边返回结果,还是处理完成后一次网络IO,返回页面的HTML代码?
      

  5.   

    我也有这样的问题!用release版,把IIS的debug那些关掉
    如果有xmlhttp 把同步请求换成异步
      

  6.   

    怀疑哪里就测哪里,如测一下应用程序的TimeSpan长短,页面加载完成时间的长短,AJAX处理完成所需时间.......