aspx页面加载速度慢

时间:2012-03-27 06:05:13

标签: asp.net performance search load

我以前曾问过这个问题,似乎我没有100%解决它。请看链接 A search aspx page return slow,我禁用了IIS日志,但似乎仍然加载缓慢。

我有一个asp.net网站,有一个searchResult.aspx,它运行一个sql脚本从MS SQL服务器数据库中检索数据,然后将数据转换成HTML格式,该网站已部署在IIS7中。 5服务器。我已经实现了静态和动态压缩,这意味着我的所有js,css和aspx页面在渲染到浏览器之前都已经过压缩。

不幸的是,searchResult.aspx返回的速度非常慢,如果搜索一个大字,就像传记一样,它平均需要10秒以上才能返回。我使用firebug Net跟踪它,阻塞,DNS查找,连接和发送都不超过10毫秒,但等待时间超过10秒。所以我在函数Page_Load(object sender,EventArgs e)的开头和结尾添加了一些代码,还添加了HTML body元素的开头和结尾,如下所示:

protected Stopwatch stopwatch = new Stopwatch();
protected void Page_Load(object sender, EventArgs e)
 {
     stopwatch.Start();
     ....
     stopwatch.Stop();
     timeForSearch = stopwatch.Elapsed.Milliseconds;
  }


   <body>
    <%
     stopwatch.Reset();
     stopwatch.Start();
    %>
    ....
   <%stopwatch.Stop();%>
  <%=timeForSearch%>+<%=stopwatch.Elapsed.Milliseconds%>=       <%=stopwatch.Elapsed.Milliseconds + timeForSearch%>

enter image description here

好的,您可以看到图片,突出显示是经过的毫秒数,但为什么需要4.8秒才能加载。

任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

好吧,我以为我发现搜索页面加载缓慢的原因,只是你所有的顾虑,这是因为SQL脚本,我之所以没注意到它是因为代码错误,我用的是

stopwatch.Elapsed.Milliseconds

其实我应该用

stopwatch.ElapsedMilliseconds

它们之间的差异在Difference between ElapsedTicks, ElapsedMilliseconds, Elapsed.Milliseconds and Elapsed.TotalMilliseconds? (C#)。最后它告诉我,我的Page_Load()方法有时需要根据搜索词加载超过5秒或7秒。

所以我需要改进sql脚本,因为它非常大,所以我不会写下来。无论如何,谢谢你们所有人,我受到了你们的关注。