【问题标题】:Cache Types & Application Cache缓存类型和应用程序缓存
【发布时间】:2012-03-16 05:24:34
【问题描述】:

对不起,如果问题很愚蠢。

在某处我读到过

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

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

片段缓存[输出缓存]

数据缓存

在某处

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

* Application caching
* Page output caching

ASP.NET 支持多少种缓存?

【问题讨论】:

    标签: c# asp.net caching


    【解决方案1】:

    这里很好地总结了不同之处:

    Exploring Caching in ASP.Net

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

    总结文章:

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

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

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

    也可以说,ASP.Net 还支持其他几种缓存;例如,您可以使用State Bags 或直接使用 ViewState 来缓存往返客户端之间的数据。 Application 和 Session 对象也可用于缓存数据(同样,有限制)——但这也属于数据缓存的范畴。

    简而言之,在 ASP.Net 中有很多地方可以存储数据 - 更重要的是要知道使用哪一个以及何时使用!

    【讨论】:

    • 上面非常总结和很好的解释。谢谢这就是我想知道的。在发帖之前我已经阅读了那篇文章,我有点困惑。
    猜你喜欢
    • 2018-06-07
    • 2012-03-26
    • 1970-01-01
    • 2017-08-17
    • 1970-01-01
    • 2010-09-16
    • 1970-01-01
    • 1970-01-01
    • 2014-05-22
    相关资源
    最近更新 更多