Cache Types & Application Cache

3

抱歉如果问题很愚蠢。

我在某处读到

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

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

片段缓存 [输出缓存]

数据缓存

而在别处则说

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

* Application caching
* Page output caching

ASP.NET支持多少种缓存类型?
1个回答

12

这里很好地总结了差异:

在ASP.Net中探索缓存

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

总结该文章如下:

我们可以使用页面输出缓存来缓存那些相对静态的内容页面。这样,不需要在每个用户请求中生成页面,而是使用页面输出缓存将页面缓存起来,以便从缓存本身访问。页面只需生成一次,然后缓存供后续获取使用。页面输出缓存允许将给定页面的整个内容存储在缓存中。
ASP.NET 提供了一种称为页面片段缓存的机制,用于缓存页面部分。要缓存页面的一部分,必须首先将要缓存的页面部分封装到一个用户控件中。在用户控件源文件中,添加一个 OutputCache 指令,指定 Duration 和 VaryByParam 属性。当该用户控件在运行时加载到页面中时,它将被缓存,并且所有后续引用该相同用户控件的页面都将从缓存中检索它。
数据缓存可以通过减少数据库竞争和往返操作来显著提高应用程序的性能。简单来说,数据缓存将所需数据存储在缓存中,以便 Web 服务器不会为每个请求发送请求到 DB 服务器,从而提高网站性能。我还想补充一点,您也可以将用户数据存储在此缓存中,前提是您知道限制(例如可用数据的时间长度)以及许多其他类型的数据存储。
可以说,ASP.Net支持多种缓存方式。例如,您可以使用State Bags或直接使用ViewState在客户端之间缓存数据。ApplicationSession对象也可以用于缓存数据(同样有限制)-但这实际上也属于数据缓存的范畴。简而言之,在ASP.Net中,您可以将数据存储在许多地方,更重要的是要知道何时使用哪种方式!

非常简洁地解释了上面的内容,谢谢,这正是我想知道的。在发帖之前,我已经阅读了那篇文章,但还是有些困惑。 - Pirzada

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接