用于 ASP.NET 输出缓存的分布式缓存
NCache 为在网络场环境中运行的 ASP.NET 应用程序提供极其快速且可靠的输出缓存功能。
备注
此功能也可用于 NCache Professional.
ASP.NET 的输出缓存系统根据查询字符串参数和浏览器类型等各种参数来缓存页面内容的不同版本。 在 ASP.NET 4.0 中,添加了一个扩展点,可帮助开发人员使用他们选择的除 ASP.NET 缓存之外的任何其他缓存系统。 NCache的输出缓存提供程序源自 System.Client.Output
CacheProvider
从 ASP.NET 4.0 输出缓存可扩展性中受益。
由于企业级应用程序通常托管在多服务器网络场中,因此与分布式 OutProc 缓存相比,InProc 输出缓存并没有提供太多好处。 使用 ASP.NET 4.0 的这种可扩展性功能, NCache 现在有自己的 ASP.NET 输出缓存提供程序。
分布于自然界: NCache 输出缓存提供程序是 OutProc 以及本质上是分布式的。
库存: 运用 NCache的输出缓存提供程序,可以将不同 ASP.NET 页面的内容缓存在多个服务器上,而不是分别缓存在每个 ASP.NET 工作进程中。 这允许网络场中的每个服务器共享单个分布式缓存。
可靠性和容错性: 与 ASP.NET 的输出缓存不同,内容缓存在 NCache当工作进程崩溃或 IIS 应用程序池被回收时,输出缓存提供程序不会丢失。
可扩展性: NCache 输出缓存提供程序不受每个服务器上可用内存的限制,因为缓存集群可以动态增长。
带有自定义挂钩的输出缓存: NCache 输出缓存提供程序允许用户挂钩其自定义代码以在缓存之前修改缓存项的属性,从而提供额外的控制。 由于 ASP.NET 输出缓存系统没有提供任何开箱即用的机制来指定缓存依赖项,因此这些挂钩可用于添加具有依赖项信息的缓存项。 这些依赖项可以是密钥、文件或数据库依赖项。
与大多数企业应用程序一样,页面或控件的输出通常取决于数据库中的某些数据。 在此类应用程序中,用户可能希望缓存页面或控件的输出,直到该页面内容所依赖的数据库中的数据发生更改。 类似地,用户可能希望在运行时更改某些页面的过期时间,以覆盖配置设置中给出的默认过期时间。 所有这一切都可以通过编写自定义钩子来实现 IOutPutCacheHook
界面。 无需对应用程序的代码进行任何更改即可实现、配置和部署这些挂钩。 配置和部署所需的只是修改应用程序的 网页配置 文件中。
- 没有应用程序代码更改: 无需对应用程序的代码进行任何更改即可实现、配置和部署这些挂钩。 配置和部署所需的只是修改应用程序的 网页配置 文件中。
在本节中
ASP.NET 输出缓存提供程序概述
解释如何在 ASP.NET 输出缓存中配置 NCache 领域广泛应用,提供了卓越的解决方案。
带有自定义挂钩的 ASP.NET 输出缓存
说明如何在应用程序中使用带有自定义挂钩的 ASP.NET 输出缓存。