1

我正在 asp.net 中开发一个时事通讯,它将发送给大量用户,所以我可以减少的每一千字节对带宽消耗的使用有很大帮助,我知道之前所做的就是编写 aspx,不包括一些标签之间的空格,在渲染之前,我已将一些控件 ID 重命名为“-”以节省更多空间。所以现在,该文件有 50kb。我需要一个 25 Kb 的文件。

任何人都可以教我任何其他方式来节省更多空间吗?

ps.:我使用 3 个 div 和一些数据,以及 2 个重复器,一个在另一个内部,为我生成一个包含一些数据的表。

编辑:我禁用了视图状态,并删除了不必要的 div,我将尝试验证 gzip 是否在 IIS 中启用。

提前致谢

4

6 回答 6

5

确保启用了 HTTP 压缩。这将有助于减少 HTML 的数量,但启用 HTTP 压缩将带来比您可能看到的边际改进更多的东西。

启用压缩的方法有多种,具体取决于您的 IIS 版本。例如,在 IIS 6.0 中,您可以手动编辑 metabase.xml 或运行:

cscript adsutil.vbs set w3svc/filters/compression/parameters/HcDoDynamicCompression true 

您可以使用https://addons.mozilla.org/en-US/firefox/addon/3829/ Live HTTP Headers for Firefox 之类的方式检查 HTTP 标头以验证是否启用了压缩。检查“内容编码:gzip”的标题。

于 2010-05-18T20:46:26.217 回答
4

Don't use an aspx page if you want full control. Make a Generic Handler, and then you can have full control over every byte generated.

Instead of using Repeaters, just loop through a dataset and output tables or spans or something. Although, I have to say, repeaters are very easy to control the exact output of, too.

Look at your generated html and see if you can identify any obvious culprits.

于 2010-05-18T20:48:43.903 回答
2

如果您正在使用,您可以禁用视图状态并优化图像文件。

于 2010-05-18T20:38:26.763 回答
1

您可能想查看 IIS 压缩(它使用 gzip IIRC)。这应该会降低文件大小。

还要缩小 javascript/css(我已经这样做了,并且看到 js/css 文件大小减少了 40%),这里有一个链接到一本书/网站,它讨论了你可以做的其他事情:http://developer。 yahoo.com/performance/rules.html,书名是《高性能网站》,ISBN:978-0-596-52930-7

于 2010-05-18T20:47:01.753 回答
1

它可能不会节省太多,但您也可以通过认真考虑是否将 DIV 用于样式目的来减少标记,而直接对内容进行样式设置将获得相同的结果。

例如,


<div class="sidebar">
  <ul>
    <li>Lorem</li>
  </ul>
</div>

在大多数情况下,您可以通过直接设置 UL 样式获得相同的结果:


  <ul class="sidebar">
    <li>Lorem</li>
  </ul>

但在你的情况下,中继器可能是膨胀的主要来源。确保您使用干净的 HTML 为他们使用自定义模板,而不是依赖开箱即用的渲染,这可能会非常混乱。

就像其他人发布的一样,关闭任何您不需要的控件的视图状态-仅此而已。

于 2010-05-18T20:47:37.477 回答
1

如果您使用 ASP.Net Web 表单,我建议您阅读这篇文章 - 说明如何正确利用 ViewState:

http://weblogs.asp.net/infinitiesloop/archive/2006/08/03/Truly-Understanding-Viewstate.aspx

于 2010-05-18T20:39:34.123 回答