缓存类型和应用程序缓存

Pir*_*ada 3 c# asp.net caching

对不起,如果问题是愚蠢的.

在某处,我读到了

ASP.NET支持三种类型的缓存:

页面输出缓存[输出缓存]

片段缓存[输出缓存]

数据缓存

在某个地方

ASP.NET中有两种不同类型的缓存:

* Application caching
* Page output caching
Run Code Online (Sandbox Code Playgroud)

ASP.NET支持多少种类型的缓存?

das*_*ash 12

这里的差异很好地总结如下:

探索ASP.Net中的缓存

您已多次列出相同类型的缓存; 我建议您阅读上面的链接,如果您遇到更多困难,请回过头来询问一些更具体的问题.

总结一下这篇文章:

  1. 对于内容相对静态的页面,我们可以使用页面输出缓存.因此,我们可以使用页面输出缓存来缓存页面,而不是在每个用户请求上生成页面,以便可以从缓存本身访问它.页面可以生成一次,然后缓存以供后续提取.页面输出缓存允许将给定页面的整个内容存储在缓存中.

  2. 页面片段缓存:ASP.NET提供了一种缓存页面部分的机制,称为页面片段缓存.要缓存页面的一部分,必须先将要缓存的页面部分封装到用户控件中.在用户控件源文件中,添加一个OutputCache指令,指定Duration和VaryByParam属性.当该用户控件在运行时加载到页面中时,它将被缓存,并且引用该相同用户控件的所有后续页面将从缓存中检索它

  3. 数据缓存:缓存数据可以通过减少数据库争用和往返来显着提高应用程序的性能.简单地说,数据缓存将所需数据存储在缓存中,这样Web服务器就不会每次为每个请求向DB服务器发送请求,从而提高了网站性能.我还补充说,如果您了解数据可用的限制(例如,数据可用的时间长度)以及来自许多其他类型的数据存储的数据,您还可以将用户数据存储在此缓存中.

还可以说有几种其他类型的缓存ASP.Net支持; 例如,您可以使用State Bags或简单的ViewState来缓存到客户端的往返之间的数据.该应用程序会话对象也可以用来(再次,有限制)缓存数据-但这真的还附带数据缓存的职权范围之下.

简而言之,有很多地方你可以在ASP.Net中挖掘数据 - 它更多的是知道使用哪个以及何时使用!