8

如何减少 ASP.NET 应用程序中的页面加载时间?与数据库交互时应该注意什么,特别是什么

例如

  1. 明智地使用视图状态
  2. 部署应用时在 web.config 中设置

    ETC

4

11 回答 11

9

TechEd 2010 North America 的一些关键“要点”:

  • 缓存是性能的关键,请仔细考虑您的缓存策略。
  • 如果可能,禁用视图状态。
  • <compilation debug=”false">部署应用程序时在 web.config 中设置。
  • 考虑图形和其他静态内容的 CDN 或子域。
  • 将 javascript 放在页面底部,CSS 放在顶部。
  • 考虑用于图标和其他“小”图形的 CSS 精灵。

您可以在这里在线观看会议,强烈推荐它们:

于 2010-06-30T11:52:12.947 回答
3

80% 的最终用户响应时间都花在了前端。大部分时间都用于下载页面中的所有组件:图像、样式表、脚本、Flash 等。

http://developer.yahoo.com/performance/rules.html

我并不是建议忽略已经提供的答案中的视图状态和数据库缓存建议。我指出,我发现更简单的更改是在 IIS 中打开 GZip 压缩,在静态元素上设置过期标头以减少服务器请求,使用smush.it等工具优化图像

使用Zoompf运行您的站点报告,以获得非常详细的报告,其中包含估计影响和易于实施评级。

于 2010-07-01T21:13:48.850 回答
3
  1. 永远不要在生产环境的调试配置下部署 asp.net 应用程序。在这里了解scottgu对此有何评论。

  2. 使用无 Cookie 域来提供静态资源,如图像、脚本、样式等。每个客户端请求都与一大堆 cookie 一起发送,在提供图片或脚本时不需要 cookie。因此,将这些资源托管在无 cookie 的域上。

  3. 缩小来自服务器的脚本、样式表和 HTML 响应。删除不必要的换行符和空格可以改善加载时间和带宽优化。

您会从这里找到许多提示

于 2010-08-11T09:25:40.820 回答
2
  • 尽量最小化 ViewState 或者保留在服务器上
  • 通过使用用户控件的输出缓存来缓存页面上的数据或部分
  • 尽可能捆绑脚本和css

总是在你重构某些东西之后进行测量,看看它是否有所作为。

另请查看此处了解更多信息

格兹,克里斯。

于 2010-06-30T11:31:56.320 回答
1

您总是可以触发异步数据库操作并异步更新页面 - 想到 AJAX 更新面板。

还有页面输出缓存,如果页面大部分是静态的,这很有用。它也可以基于参数完成,因此您可能会缓存为给定数据库搜索创建的页面。

您还可以采取过度的方法并减少页面的“冗长”。我通过缩小元素名称等在产品页面上做了一次有趣的事情,设法减少了超过 50% 的页面大小,但它使标记完全不可读哈哈

沿着同样的路线,将缩减工具应用于 css/javascript 文件 - 如果您压缩它们,也将它们合并,因为压缩比更少的大文件更有效。

于 2010-06-30T11:44:31.150 回答
1

在进行任何优化工作之前,最重要的是指出需要优化的内容。可以在此处发布数以千计的优化技巧,因此最好找出您的性能问题,并提出更具体的问题以帮助优化您需要的内容。您可以优化 Web 应用程序的 3 个部分:

服务器端性能:指出最大的瓶颈(分析器是一个简单的选择)。优化瓶颈。优化较小的问题,或者在没有测量时间量的情况下进行优化,当大问题仍然存在时,可能会浪费时间。

客户端性能:从 yslow 或 google page speed 等工具中获取建议。

带宽:在尽可能少的请求中向用户发送尽可能少的数据。

于 2010-06-30T11:54:12.017 回答
0

MSDN 上有一篇有趣的文章,其中包含优化 ASP.Net 应用程序的 10 个技巧。它在

http://msdn.microsoft.com/en-us/magazine/cc163854.aspx

于 2010-06-30T11:33:49.430 回答
0
  • 缓存尽可能多的数据库读取
  • 减少/禁用视图状态
  • 少做(如果可能的话)
于 2010-06-30T11:42:02.637 回答
0
  • 使用 MS Visual Studio 2010,它可以帮助您优化 .NET 代码以获得更好的性能。
  • 当背景中有大量图像时,CSS 精灵非常有用。
  • 通过删除空格和注释,使用 gZip 压缩器和 CSS 文件压缩 JavaScript 文件的内容。
  • 避免 HTML 注释,因为它们在浏览器中通过“查看源代码”选项对客户端可见,这也将减小文件大小。
  • 将大部分不必要的 JavaScript 放在页面底部。为了获得更好的性能,在页面上加载内容后动态加载 JavaScript 引用。
于 2010-07-26T03:56:53.540 回答
0

始终使用请求在应用程序中加载概念。尽量避免在页面加载时出现不必要的数据库命中。如果页面加载时有大量数据,则可以使用 Ajax 请求调用。

于 2012-04-17T12:17:22.940 回答
0

以下信息用于减少页面加载时间

  1. 在托管站点时删除不需要的行空间。
  2. 将所有内联 css 文件合并到一个通用的 .css 文件中。
  3. 将所有内联 Java 脚本合并到一个通用 .js 文件中,并在需要时添加对该文件的引用。
  4. 使用压缩 Javascript 和 CSS 文件。
  5. 尝试在您的网页中使用较小尺寸的较少图像。
于 2017-10-13T12:53:59.147 回答