如何加快我的网站(后台)

时间:2010-04-15 04:48:03

标签: asp.net javascript html performance

您好我在ASP.NET 2.0中开发了一些后端,我已将所有图像放入Cache,GZIPED我的CSS,JS文件以及所有内容以加速每个选项的加载。

性能很好,我对客户没有任何问题,但我想要“更多”快速加载,我正在寻找一些推荐。

重要的是要提到这些网站仅在内部网中使用,所以即时思考使用IFRAME实现我的下一个项目的内容(我认为)选项将加载更快,因为他们不必加载整个网站。 / p>

任何帮助/推荐?

提前感谢。

====

编辑:

我不使用viewstates我写了HTML(代码behing)生成的控件并尽可能少地使用ASP.NET Rich控件,所有我的静态内容都在Static vars(Header,Menu,Footer)中,但我只是在寻找加速垃圾更多。

在编译我的网站后,我压缩所有的HTML,CSS,JS并尽可能少地使用这些文件。

但是我正在看到其他的Backend加载速度比我快,而不同之处在于他们使用的IFrame控件(我认为),我们检查代码,设计等,我们使用相同的(他们使用#INCLUDES代替静态HTML)带有HTML的STATIC VARS

5 个答案:

答案 0 :(得分:3)

我建议你不要在IFRAME中构建你的内容 - 你很可能遇到样式,后退/前进按钮功能和兼容性等问题。

如果你想尝试加速,这里有一些提示:
  - 合并和缩小您的css和js文件
  - 通过使用ajax加载内容来考虑最小化整页加载   - 确保您的图像适合网络

答案 1 :(得分:3)

一般来说,通过Intranet,加载images / js / css等将成为你的瓶颈。这意味着使用iframe对你没有帮助。

在开始插入之前,您需要找到实际瓶颈 的位置,但我建议首先要看的是对数据库的调用。特别是,每页调用次数(肯定确保您不会为每页相同的数据进行多次调用!)返回的数据大小(例如,如果您返回10,000条记录,然后只向用户显示前100个。)

一旦你获得了简单的东西,你真的需要开始分析以找出瓶颈所在。使用ASP.NET中的Trace.axd工具找出页面的哪些部分花费的时间最长,并将精力集中在那些部分上。

答案 2 :(得分:2)

不要忽视CSS Sprites,因为这可以消除你的无数小图标等。

答案 3 :(得分:1)

请勿使用IFRAME。只是不要。

由于您正在为Intranet编写内容,我认为您的资源大小并不是那么重要(仍然可以保持它们尽可能小)。是什么让您将服务器处理时间作为瓶颈。

我的建议:

  1. 我强烈建议您深入了解输出缓存并明智地使用它。它可以创造奇迹! 使用Cache对象缓存内容也很好,但是输出缓存页面可以节省大部分页面加载生命周期,因此可以节省宝贵的时间。
  2. 压缩回复(look here为首发)。
  3. 尽可能减少VIEWSTATE的大小,如果它仍然很大,请将其移至服务器(如果可能)。

答案 4 :(得分:1)

我同意不使用框架。

另外我想问你 - 用ms加载页面的延迟是多少? - 延迟下载如果您的延迟时间超过500毫秒,则您的代码需要进行操作,而不是加载/缓存。

在Intranet上,我的延迟时间通常为80-300ms,进行多次计算时为600-800-1000ms。

也许延迟在代码的其他地方,而不是它们加载的速度。

我使用Google Chrome和Chrome开发者工具检查延迟。 (firefox上有类似的工具)

对于缓存

阅读这篇文章,我想指出Expires,并在post-check上。

Asking browsers to cache as aggressively as possible

对于Intranet

我认为如果你在内网上压缩gZip你的页面 - 假设非常快,那么你就失去了压缩和解压缩的时间,因为页面从一台计算机到另一台计算机的时间少于几毫秒 - 我相信压缩/解压缩时间更长。需要一些测试 - 再次使用开发人员工具和google ghrome上的下载时间。

缩小也许并不坏,并且将所有css和js分别保存在一个文件中。

PS。 计算机等待的每一秒钟都是我们生命中失去的第二个。