TLDR版本:用于缓存许多在我的.NET4 WCF服务中很少更改的小型数据库表。哪种技术最易于实施,最易于维护,最佳执行以及为什么?
长版本:我开始为新项目制定缓存策略。它过去很简单,因为预先打包的选项较少(企业库为初学者),但现在.NET 4框架和AppFabric可用,我很难决定解决方案。基本上,我想缓存大量小的(<100行,2-4列)数据库表,这些表很少更改并让我的WCF服务从缓存中提取而不是每次从数据库中提取。我已经开始阅读文档,观看视频和下载培训材料,但经验是一位更好的老师,我很难找到这两者之间的比较。
任何建议都会非常感激!谢谢!
答案 0 :(得分:10)
据我所知,AppFabric是一个分布式高可用性应用程序间缓存平台。
与传统的ASP.NET缓存或其他本地缓存系统相比,它确实意味着IPC比进程内缓存和进程内调用慢,但具有很大的优势,即多个应用程序可以在需要时访问同一缓存集群并且,如果您在基础架构中设计了特定的缓存服务器,那么重新启动IIS或整个Web服务器中的应用程序池并不意味着丢失缓存。
如果缓存服务器出现故障,则高可用性和群集,另一个(s)仍然会为请求提供服务。
启用本地缓存的客户端仍然可以在本地缓存数据但是一旦它们失效或本地缓存失效,将从缓存集群中检索数据,而不是直接从数据库中检索,除非确实需要。
我认为有一个权衡,以决定是否更好地让IPC调用慢一点,但是公司是否可靠和共享缓存集群。