如何获得服务器和客户端页面的总加载时间?

时间:2012-10-02 13:03:30

标签: asp.net performance

我正在测量ASP.NET页面的性能。我需要测量两个部分:1)服务器页面加载时间(计算从数据库加载的数据绑定控件所花费的时间)和2)测量服务器的PageLoad事件开始的毫秒与毫秒之间的差异客户端已完成加载(因为我希望能够计算客户端浏览器下载和呈现HTML所花费的时间)。

使用StopWatch类可以轻松测量服务器端加载时间。我需要建议的部分是捕获客户端加载的日期和时间。

以下是我按此顺序进行的操作:

  • 一旦服务器页面加载事件运行,我就会将当前日期和时间写入隐藏字段。
  • 在客户端上,我使用$(document).ready()发出对WebMethod的AJAX调用,该WebMethod返回服务器的日期和时间。
  • 然后我从隐藏字段中存储的日期字符串和Webmethod调用返回的日期字符串中解析日期和时间,并将它们的差异写入页面上的span元素。

我这样做是因为我可以将客户端日期时间与服务器日期时间保持同步,因为某人的机器时间很容易被关闭几秒钟。但是,我认为AJAX调用会增加一些开销,这会对性能测量产生反作用。

是否有准确的方法使用GMT将客户端时间与服务器时间同步,而无需向服务器报告以获取它?

1 个答案:

答案 0 :(得分:0)

关于服务器端,您可以在Page指令

中设置Trace = true

http://msdn.microsoft.com/en-us/library/94c55d08(v=vs.100).aspx