首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >System.Web.Caching或System.Runtime.Caching是否适合于.NET 4 web应用程序?

System.Web.Caching或System.Runtime.Caching是否适合于.NET 4 web应用程序?
EN

Stack Overflow用户
提问于 2012-06-07 17:30:21
回答 2查看 22.7K关注 0票数 45

我正在向ASP.NET web应用程序添加缓存。这是.NET 4,所以我可以使用System.Runtime.Caching命名空间中的类(据我理解,它是为提供与System.Web.Caching类似的功能而添加的,但适用于非Web应用程序)。

但是,既然这是一个网络应用程序,我是否最好使用System.Web.Caching?或者,更新的System.Runtime.Caching在某种程度上是优越的呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-08 20:08:39

微软建议将System.Runtime.Caching用于所有缓存目的。参见:http://msdn.microsoft.com/en-us/library/dd997357.aspx

不过,我遇到了几个线程,其中人们对MemoryCache.Default实例存在问题。过了一会儿,它就停止正常工作了。使用add或Set方法添加的任何项实际上都不会被添加到缓存中。我尝试了同样的方法,并且能够通过显式调用MemoryCache.Default.Dispose()方法来重现这个问题。

以下是链接:MemoryCache Empty : Returns null after being set

http://forums.asp.net/t/1736572.aspx/1

我的建议是使用System.Web.Caching (HttpContext.Current.Cache)

更新:

这一问题已由Runtime Cache Issue Resolved女士在下面的文章中对已接受的答案进行了修正

票数 46
EN

Stack Overflow用户

发布于 2012-06-07 17:49:11

System.Runtime.Caching允许您缓存所有.Net应用程序,而不仅仅是IIS进程。因此,如果需要在多个场景中访问缓存,请使用System.Runtime。此外,您还可以检查这个缓存适配器,它允许您在运行时、web和应用程序结构缓存之间进行交换。https://bitbucket.org/glav/cacheadapter

还有一件事,如果您有一个多服务器场,并且具有负载均衡的配置,请确保您有粘性会话或分布式缓存模型。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10936815

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档