【问题标题】:aspx page load slowaspx 页面加载缓慢
【发布时间】:2012-04-10 15:59:12
【问题描述】:

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

我有一个asp.net网站,里面有一个searchResult.aspx,它运行一个sql脚本从MS SQL server数据库中检索数据,然后把数据转成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%>

好的,你可以看到图片,亮点是经过的毫秒数,但为什么加载需要 4.8 秒。

我们将不胜感激。

【问题讨论】:

  • 您确定这种缓慢与您的数据访问逻辑无关吗?
  • 显示使用的 SQL 查询。你还在用gridview还是其他数据控件?
  • 使用 SQL Server Profiler?
  • 嗨,mamoo,正如我所展示的,你可以看到,我使用秒表来计算整个 Page_Load() 函数消耗的时间,它只是几百毫秒,我也在我的开发中调试它环境,速度很快,所以我想我可以确认一下sql进程的耗时。

标签: asp.net performance search load


【解决方案1】:

好吧,我以为我找到了搜索页面加载缓慢的原因,只是你所有的担心,是因为SQL脚本,我没有注意到是因为代码错误,我使用了

stopwatch.Elapsed.Milliseconds

其实我应该用

stopwatch.ElapsedMilliseconds

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

所以我需要改进一下sql脚本,因为它很大,所以我就不写了。不管怎样,谢谢你们,你们的担忧给了我启发。

【讨论】:

    猜你喜欢
    • 2015-03-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-22
    • 1970-01-01
    • 1970-01-01
    • 2012-02-07
    相关资源
    最近更新 更多