发布时间:2025-12-10 19:36:40 浏览次数:6
OutputCache概念学习[通俗易懂]缓存的分类:客户端缓存(ClientCaching)代理缓存(ProxyCaching)反向代理缓存(ReverseProxyCaching)服务器缓存(WebServerCaching)缓存的好处及应用:可以让如css,js,image,aspx等资源文件在第二次访问时读取本地而不用再次请求服务器端,减少客户端对服务器资源请求的压力,加快客户端响应速度。
缓存的分类:
客户端缓存(Client Caching)代理缓存(Proxy Caching)反向代理缓存(Reverse Proxy Caching)服务器缓存(Web Server Caching)当然,上面的只是我个人的见解,如有问题欢迎指正。
<%@ OutputCache Duration=”#ofseconds”
Location=”Any | Client | Downstream | Server | None |
ServerAndClient “
Shared=”True | False”
VaryByControl=”controlname”
VaryByCustom=”browser | customstring”
VaryByHeader=”headers”
VaryByParam=”parametername”
VaryByContentEncoding=”encodings”
CacheProfile=”cache profile name | ””
NoStore=”true | false”
SqlDependency=”database/table name pair | CommandNotification”
ProviderName=”Provider Name”
%>
参考:http://msdn.microsoft.com/zh-cn/library/hdxfb6cy.aspx
Duration:页或用户控件进行缓存的时间(以秒计)。在页或用户控件上设置该特性为来自对象的 HTTP 响应建立了一个过期策略,并将自动缓存页或用户控件输出。 Location:OutputCacheLocation 枚举值之一。默认值为 Any。 Any:输出缓存可位于产生请求的浏览器客户端、参与请求的代理服务器(或任何其他服务器)或处理请求的服务器上。此值对应于 HttpCacheability.Public 枚举值。
Client:输出缓存位于产生请求的浏览器客户端上。此值对应于 HttpCacheability.Private 枚举值。
Downstream:输出缓存可存储在任何 HTTP 1.1 可缓存设备中,源服务器除外。这包括代理服务器和发出请求的客户端。
None:对于请求的页,禁用输出缓存。此值对应于 HttpCacheability.NoCache 枚举值。
Server:输出缓存位于处理请求的 Web 服务器上。此值对应于 HttpCacheability.Server 枚举值。
ServerAndClient:输出缓存只能存储在源服务器或发出请求的客户端中。代理服务器不能缓存响应。此值对应于 HttpCacheability.Private 和 HttpCacheability.Server 枚举值的组合。
关于OutputCache 的概念就写到这,后面会写到每个属性的使用以及差异化,希望大家多多支持。