【发布时间】:2012-09-23 08:04:12
【问题描述】:
我正在测量 ASP.NET 页面的性能。我需要测量两个部分:1)服务器页面加载时间(计算从数据库加载的数据绑定控件所需的时间)和 2)测量服务器的 PageLoad 事件启动的毫秒数和客户端已完成加载(因为我希望能够计算客户端浏览器下载和呈现 HTML 所需的时间)。
使用 StopWatch 类可以轻松测量服务器端加载时间。我需要建议的部分是捕获客户端加载的日期和时间。
这是我按此顺序执行的操作:
- 服务器页面加载事件运行后,我将当前日期和时间写入隐藏字段。
- 在客户端,我使用
$(document).ready()触发对返回服务器日期和时间的 WebMethod 的 AJAX 调用。 - 然后我从隐藏字段中存储的日期字符串和 Webmethod 调用返回的日期字符串中解析日期和时间,并将它们的差异写入页面上的
span元素。
我这样做是为了让客户端日期时间与服务器日期时间保持同步,因为某人的机器时间很容易相差几秒钟。但是,我认为 AJAX 调用本身会增加一点开销,这对性能测量会适得其反。
是否有一种准确的方法可以使用 GMT 将客户端时间与服务器时间同步,而无需向服务器报告以获得它?
【问题讨论】:
标签: asp.net performance