易截截图软件、单文件、免安装、纯绿色、仅160KB

ASP.NET 缓存:方法和最佳实践

ASP.NET 缓存:方法和最佳实践
2009-11-28 16:49
摘要:ASP.NET 提供三种主要形式的缓存:页面级输出缓存、用户控件级输出缓存(或称为片段缓存)和缓存 API。输出缓存和片段缓存的优点是非常易于实现,在大多数情况下,使用这两种缓存就足够了。而缓存 API 则提供了额外的灵活性(实际上是相当大的灵活性),可用于在应用程序的每一层利用缓存。
Steven A. Smith ASPAlliance.com
2003 年 8 月
适用于: Microsoft? ASP.NET
请下载 CacheDemos.msi。
本页内容
Steve 的缓存提示
页面级输出缓存
片段缓存,用户控件输出缓存
缓存 API,使用 Cache 对象
小结
在 ASP.NET 提供的许多特性中,缓存支持无疑是我最欣赏的特性,我这样说当然是有充分理由的。相比 ASP.NET 的所有其他特性,缓存对应用程序的性能具有最大的潜在影响,利用缓存和其他机制,ASP.NET 开发人员可以接受使用开销很大的控件(例如,DataGrid)构建站点时的额外开销,而不必担心性能会受到太大的影响。为了在应用程序中最大程度地利用缓存,您应该考虑在所有程序级别上都实现缓存的方法。
Steve 的缓存提示
尽早缓存;经常缓存
您应该在应用程序的每一层都实现缓存。向数据层、业务逻辑层、UI 或输出层添加缓存支持。内存现在非常便宜 — 因此,通过以智能的方式在整个应用程序中实现缓存,可以获得很大的性能提高。
缓存可以掩盖许多过失
缓存是一种无需大量时间和分析就可以获得“足够良好的”性能的方法。这里再次强调,内存现在非常便宜,因此,如果您能通过将输出缓存 30 秒,而不是花上一整天甚至一周的时间尝试优化代码或数据库就可以获得所需的性能,您肯定会选择缓存解决方案(假设可以接受 30 秒的旧数据)。缓存正是那些利用 20% 付出获得 80% 回报的特性之一,因此,要提高性能,应该首先想到缓存。不过,如果设计很糟糕,最终却有可能带来不良的后果,因此,您当然也应该尽量正确地设计应用程序。但如果您只是需要立即获得足够高的性能,缓存就是您的最佳选择,您可以在以后有时间的时候再尽快重新设计应用程序。
返回页首
页面级输出缓存
作为最简单的缓存形式,输出缓存只是在内存中保留为响应请求而发送的 HTML 的副本。其后再有请求时将提供缓存的输出,直到缓存到期,这样,性能有可能得到很大的提高(取决于需要多少开销来创建原始页面输出 - 发送缓存的输出总是很快,并且比较稳定)。
实现
要实现页面输出缓存


相关文档:

新手怎么学习asp.net

------本文转载自网络,所有权归作者所有
如果你已经有较多的面向对象开发经验,跳过以下这两步:
第一步 掌握一门.NET面向对象语言,C#或VB.NET。
我强烈反对在没系统学过一门面向对象(OO)语言的前提下去学ASP.NET。
ASP.NET是一个全面向对象的技术,不懂OO,那绝对学不下去!
第二步 对.NET Framework类库有一 ......

ASP.NET大数据量查询分页例子

 
前台 如果你用的是 gridview 就把Repeater替换成gridview 。一样的。。
 <form id="frm01" action="" method="post" runat="server">
          <asp:ScriptManager ID="ScriptManager1" runat="server">
      & ......

asp.net session丢失

发布中遇到了两个问题
一。session 会短时间自动消失
解决办法
1。在www.google.com中查session 丢失
2。在Window服务中将ASP.NET State Service 启动。
3。修改web.config
 <system.web>
  add  <sessionState mode="StateServer" timeout="60"/>
二。sql server 超过最大连接池数 ......

在ASP.net页面引用js时的注意事项

在ASP.NET页面中经常需要链入一些JS文件,如:

 如果在JS里有中文的话,在一般情况下,在浏览器里会报错脚本错误.
 如果不信可以自己试一试。
 其实是这样的:
 由VS.NET自动生成的项目里,Web.Config中有这么一段:
<
globalization
requestEncoding
="utf-8"
responseEncoding
=" ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号