WCF缓存解决方案 – 需要建议

我工作的公司正在寻求实施缓存解决方案。 我们托管了几个WCF Web服务,我们需要缓存某些值,这些值可以持久化和提取,而不管客户端与服务的会话如何。 我正在研究以下技术:

  • 缓存应用程序块4.1

  • 使用HttpRuntime缓存的WCF TCP服务

  • Memcached Win32和客户端

  • Microsoft AppFabric缓存Beta 2

我们的测试服务器是带有IIS6的Windows Server 2003,但我们的生产服务器是Windows Server 2008,因此上述任何选项都可以使用(除了我们的测试服务器上的AppFabric缓存)。

有没有人对这些经历有任何经验? 此缓存解决方案不会用于存储大量数据,但需要经常快速地获取。

提前致谢。

我们在我们的应用程序中使用内置的HttpRuntime缓存,它运行良好。

它很容易安装到位,因为您的服务器上无需安装任何内容。 此外,迁移到AppFabric缓存不应该在以后这么大。

也就是说,它还带来了一些限制,特别是如果您的服务不在同一个IIS应用程序中托管,因为缓存的对象将被复制到每个应用程序中。 如果您不打算缓存大量数据和/或如果您不打算长时间缓存它们,那么您应该没问题,因为您最终不会消耗太多RAM。

您似乎没有负载平衡的服务器,但在这种情况下,使用HttpRuntime缓存还意味着复制每台服务器上的缓存。 这是使用memcached或AppFabric缓存可以防止的事情……

如果您对缓存策略没有特殊要求,则可以为需要缓存的服务创建RESTful接口使用“GET”方法,然后让浏览器处理缓存。