INFO: ASP.NET 缓存概述
| 文章编号 | : | 307225 |
| 最后修改 | : | 2007年5月31日 |
| 修订 | : | 2.2 |
本文的发布号曾为 CHS307225
概要
本文介绍 ASP.NET 缓存。
有关其他 ASP.NET 的概述,请参阅下面的 Microsoft 知识库文章:
有关其他 ASP.NET 的概述,请参阅下面的 Microsoft 知识库文章:
305140 (http://support.microsoft.com/kb/305140/EN-US/) INFO: ASP.NET Roadmap(INFO:ASP.NET 使用说明)
更多信息
ASP.NET 缓存是一种用于 Web 应用程序的通用用途的缓存工具。 它提供一个简单界面和一个较高级界面,前者用于缓存,后者公开过期和更改依赖项服务。
缓存是一种非常重要的技术,用于构建高性能、可缩放的服务器应用程序。 某些创建费用较高的项目可以一次生成,在使用一段时间后就无效了。 这些项目存储在内存中,它们在内存中可以得到高效率的检索并使用,从而省去了重新构建项目的开销。
若想了解更多关于 ASP.NET 缓存功能的信息,请参阅 Microsoft .NET 框架软件开发工具包 (SDK) 文档中的以下主题:
下面的示例说明如何缓存 30 秒内的页输出:
Visual Basic .NET 示例
有关片段缓存的更多信息,请参阅 .NET 框架 SDK 文档中的以下主题:
有关缓存 API 的概述,请参阅 .NET 框架 SDK 文档中的以下主题:
缓存是一种非常重要的技术,用于构建高性能、可缩放的服务器应用程序。 某些创建费用较高的项目可以一次生成,在使用一段时间后就无效了。 这些项目存储在内存中,它们在内存中可以得到高效率的检索并使用,从而省去了重新构建项目的开销。
若想了解更多关于 ASP.NET 缓存功能的信息,请参阅 Microsoft .NET 框架软件开发工具包 (SDK) 文档中的以下主题:
ASP.NET 缓存功能
http://msdn2.microsoft.com/en-us/library/xsbfdd8c(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/xsbfdd8c(vs.71).aspx)
ASP.NET 包括三种缓存功能:http://msdn2.microsoft.com/en-us/library/xsbfdd8c(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/xsbfdd8c(vs.71).aspx)
| • | 输出缓存 |
| • | 片段缓存 |
| • | 缓存 API |
输出缓存
输出缓存使您可以存储动态页面生成的结果。 在以后的请求中,缓存的输出用于满足请求,而不会动态执行页代码。 输出缓存又称页缓存。下面的示例说明如何缓存 30 秒内的页输出:
Visual Basic .NET 示例
<%@ Page Language="VB" %>
<%@ OutputCache Duration="30" VaryByParam="*" %>
<script runat=server>
Public Sub Page_Load()
Response.Write(DateTime.Now.ToString())
End Sub
</script>
Visual C# .NET Sample <%@ Page Language="C#" %>
<%@ OutputCache Duration="30" VaryByParam="*" %>
<script runat=server>
public void Page_Load()
{
Response.Write(DateTime.Now.ToString());
}
</script>
有关输出缓存的更多信息,请参阅 .NET 框架 SDK 文档中的以下主题: | • | 缓存 ASP.NET 页 http://msdn2.microsoft.com/en-us/library/06bh14hk(vs.71).aspx (http://msdn2.microsoft.com/en-us/library/06bh14hk(vs.71).aspx) |
片段缓存
在您仅需要缓存页面的一个子集时,应使用片段缓存。 这是通过缓存用户控件的输出来实现的。导航栏、页眉和页脚都是很好的片段缓存候选对象。有关片段缓存的更多信息,请参阅 .NET 框架 SDK 文档中的以下主题:
| • | 缓存 ASP.NET 页的一部分 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconcachingportionsofaspnetpage.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconcachingportionsofaspnetpage.asp) |
缓存 API
缓存应用程序编程接口 (API) 使您可以用编程方式将任意对象存储到内存中,从而使应用程序可以节省重新创建这些对象所需的时间和资源。 缓存 API 使您能够根据以下凭据让缓存中的项目过期:| • | 时间 |
| • | 文件依赖项 |
| • | 缓存索引依赖项 |
缓存应用程序请求
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconcacheapis.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconcacheapis.asp)
ASP.NET 使您能够轻松地向缓存中添加项目和从中检索、删除缓存。 有关向缓存添加项目和从中检索、删除项目的信息,请参阅 .NET 框架 SDK 文档中的以下主题:http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconcacheapis.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconcacheapis.asp)
向缓存添加项目
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconaddingitemstocache.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconaddingitemstocache.asp)
检索缓存项目的值
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconretrievingvaluesofcacheditems.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconretrievingvaluesofcacheditems.asp)
从缓存删除项目
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpcondeletingitemsfromcache.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpcondeletingitemsfromcache.asp)
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconaddingitemstocache.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconaddingitemstocache.asp)
检索缓存项目的值
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconretrievingvaluesofcacheditems.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpconretrievingvaluesofcacheditems.asp)
从缓存删除项目
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpcondeletingitemsfromcache.asp (http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguidnf/html/cpcondeletingitemsfromcache.asp)
