asp.net-mvc-3 – MemoryCache对象和负载均衡

我正在使用ASP .NET MVC 3编写Web应用程序.我想使用MemoryCache对象,但我担心它会导致负载均衡的Web服务器出现问题.当我google时,看起来这个问题在服务器上解决了,即使用AppFabric.如果一家公司有负载均衡的服务器,那么确保他们有AppFabric或类似的运行吗?或者作为开发者我可以或应该做些什么?
最佳答案
首先,对于ASP.NET,您应该查看ASP.NET Cache而不是MemoryCache. MemoryCache是​​.NET 4.0中引入的通用缓存API,用于在非Web应用程序中提供等效的ASP.NET缓存.

你说AppFabric解决了拥有自己的缓存数据实例的多个服务器的问题是正确的,因为它提供了一个可从所有Web服务器访问的单个逻辑缓存.在您成功解决问题之前,需要考虑以下几点:

>它不作为Windows Server的一部分提供 – 正如您所说的那样
如果要使用它,请将其安装在服务器上.什么时候
AppFabric发布后,有人建议将其发布为
Windows Server的下一个版本的一部分,但我还没有看到
有关Windows Server 2012的任何信息都证实了这一点.
>您需要额外的服务器,或者至少建议您使用
他们.微软对AppFabric的推荐是你运行它
专用服务器.这意味着虽然AppFabric本身是免费的
下载,您可能会获得额外的Windows Server许可证
成本.说到哪……
>您可能需要Enterprise Edition许可证.如果你想使用
AppFabric的高可用性功能,您只能这样做
运行Enterprise Edition的服务器,这是一个更昂贵的许可证
比标准版.
>毕竟你可能不需要它.其中一些将取决于您的应用程序以及您希望使用共享缓存层的原因.如果您担心多个服务器上的缓存可能与数据库(或实际上是彼此)不同步,那么明智地使用SqlCacheDependency对象可能会让您解决问题.

转载注明原文:asp.net-mvc-3 – MemoryCache对象和负载均衡 - 代码日志