【发布时间】:2010-09-06 12:25:45
【问题描述】:
对于将在 Web 应用程序和富客户端应用程序中使用的 .NET 组件,似乎有两个明显的缓存选项:System.Web.Caching 或 Ent。库。缓存块。
- 你用什么?
- 为什么?
System.Web.Caching
在网络应用程序之外使用它是否安全?我看到了混杂的信息,但我认为答案可能不是真的。
- a KB article warning against 1.0 and 1.1 non web app use
- 2.0 页面有一个 comment 表明它没问题:http://msdn.microsoft.com/en-us/library/system.web.caching.cache(VS.80).aspx
- Scott Hanselman is creeped out by the notion
- The 3.5 page 包含对此类使用的警告
- 罗伯·霍华德encouraged use outside of web apps
我不希望使用它的亮点之一,SqlCacheDependency,但在 .NET 3.5 中添加 CacheItemUpdateCallback 似乎是一件非常好的事情。
Enterprise Library Caching Application Block
- 其他块已在使用中,因此依赖项已存在
- 不需要缓存持久性;重启时重新生成缓存就可以了
一些缓存项应该始终可用,但会定期刷新。对于这些项目,在项目被删除后获取回调不是很方便。看起来客户端只需要休眠并轮询,直到重新填充缓存项。
Memcached for Win32 + .NET client
当您不需要分布式缓存时有什么优缺点?
【问题讨论】:
标签: caching .net-2.0 memcached enterprise-library