WCF服务的分布式缓存解决方案

时间:2012-03-19 21:54:35

标签: .net wcf caching distributed-caching

我们有一个典型的ASP.NET应用程序,带有一个Web应用程序&一个电话客户端应用程序,它与使用SQL Server数据库的WCF服务进行通信。目前我们只有一次在IIS中托管的WCF服务实例,但可能决定将来部署到webfarm。

我们希望将关系数据缓存在WCF服务端的缓存中,这样Web应用和手机应用都可以从中受益。 WCF服务纯粹是无国籍的,我们需要保持这种状态。

有了这些限制,我们可以使用哪些可用的技术/解决方案/第三方组件来实现WCF服务上的缓存。哪些在webfarm场景中效果最好?

3 个答案:

答案 0 :(得分:2)

你看过Windows Server AppFabric了吗?它将在您的Web场中扩展,并且应与大多数基于服务器的.NET解决方案兼容。

我们在我们的项目中广泛使用它,它运作良好。

答案 1 :(得分:2)

这里有一些第三方选择:
NCache
Memcached
Redis
AppFabric

这只是少数,但还有其他人。

答案 2 :(得分:0)

NCache可能是更好的选择。您所要做的就是在WCF和SQL Server之间创建一个缓存层,然后在缓存中填充数据。此数据的所有后续请求都将被缓存切断。

阅读下面提到的文章,该文章将进一步阐明WCF缓存的概念。

Scalable WCF Applications Using Distributed Caching