c# . net多服务器或云结构

本文关键字:结构 服务器 net | 更新日期: 2023-09-27 18:13:17

我有一个越来越大的社交网络,但是很多功能都是使用' httpcontext . current '。类来重用数据,而无需在每次请求时都访问数据库。我知道httpcontext。current。缓存'是'静态',所以我会有多服务器和云结构的问题。我知道有一种方法可以配置SQL Server来利用缓存系统。这足够处理所有的请求吗?还是我还有别的事情要做?

顺便说一下,我将不得不删除大部分缓存功能,因为它包含一些用户数据…

我在这里问这种问题,因为我正在测试一个多服务器结构的网站,我已经有问题了。我必须确保服务器内存A等于服务器内存B这样做,我知道我放弃了多服务器结构的所有好处。

c# . net多服务器或云结构

"我必须确保服务器内存A等于服务器内存B"

我认为这无论如何都是不可能实现的。

你真正需要的是一个Distributed Cache机制。常见的选项有:

  • AppFabric(官方的IIS插件)
  • NCache(基本版免费)
  • Memcached(成熟,流行,被认为非常快)

请记住,HttpContex.Current.Cache是静态的,每个应用程序域。这意味着一旦你切换到Distributed Cache解决方案,你将不得不改变所有调用HttpContex.Current.Cache到新的缓存API。

好消息是,至少Session StateOutput Cache可以很容易地配置为使用新的缓存(通常使用web.config)。