缓存农业,读池

时间:2011-02-08 18:40:09

标签: c# .net asp.net caching

我有一个在100台服务器上运行的应用程序。这个应用程序与我不喜欢的nosql数据库进行通信。 100台服务器创建会话,锁定,提交等。

我想构建一个缓存服务器场或IIS服务器将要访问的脏实池,并从中读取数据和对象。缓存每隔一段时间就会过期。等

重点是避免从这100台服务器访问数据库。

您将对此缓存服务器使用什么?

WCF?休息?最佳实践和模式缓存块?还是Windows AppFabric?

我已经有了一层分布式缓存,所以没想到这一点。

你会选择什么样的架构?任何推荐或案例研究?

1 个答案:

答案 0 :(得分:1)

我们在这里讨论的数据量是多少?几KB? MB?一百GB?

除了后者之外的任何东西,而不是重新发明轮子,使用现有的缓存服务之一。基于C#标记和IIS的提及,我假设您正在运行Windows。因此,我建议您查看Memcached

来自Memcached页面:

  

免费&开源,高性能,分布式内存对象缓存系统,本质上是通用的,但旨在通过减轻数据库负载来加速动态Web应用程序。

     

Memcached是一个内存中的键值存储,用于存储来自数据库调用,API调用或页面呈现结果的小块任意数据(字符串,对象)。

我自己在类似于你描述的环境中使用Memcached(使用MS SQL而不是nosql进行数据存储)。在第一轮缓存调整之后,我们没有遇到任何问题。

如果不了解您的要求的具体细节,很难说Memcached是否是正确的解决方案,但肯定值得研究。作为参考,他们的FAQ Wiki可以在这里找到:

http://code.google.com/p/memcached/wiki/FAQ