我正在为我的 ASP.NET MVC 应用程序寻找分布式数据/对象缓存



我正在为我的 ASP.NET MVC应用程序寻找分布式数据(对象)缓存解决方案。 类似于横向扩展或NCache,但最好是免费的。

我相信System.Runtime.Caching.MemoryCache是缓存的单个服务器实现。

我相信 Azure 有一个 ASP.NET 应用程序都可以使用的分布式缓存,但我不确定两件事:

1)我真的不知道Azure是什么,除了模糊地理解它是Microsoft提供的某些服务的营销名称,例如(1)在其硬件基础结构(通常称为云)上部署应用程序的能力和(2)软件基础结构(如Visual Studio和Eclipse插件)的集合名称, 可以从应用程序内部等内部使用的类库来帮助您(1)。

2) 我不确定我希望在自己的硬件上部署的 ASP.NET 应用程序是否可以使用其 Azure 提供的缓存,因为我读到了一个模糊的断言,类似于"Azure 为使用 Azure 的 ASP.NET 应用程序提供分布式缓存",这正在成为来自Microsoft的所有通信的相当普遍的事实标准。

帮助。

你可以使用memcached。这是一个非常流行的分布式缓存系统,您可以将其部署在自己的基础架构上并使用托管客户端,例如 enyim

  1. Couchbase 是 memcached 的 .Net 改编版。它是开源和免费的。
  2. NCache是付费的,更成熟的解决方案(他们确实提供免费的Express版本)。

我个人喜欢Couchbase的简单功能,但它缺乏枚举缓存对象,清除缓存等功能。 另一方面,NCache提供与System.Web.Caching.Cache相同的功能,同时为分布式缓存解决方案提供额外的功能。

附言我与上述任何一家公司都没有关联。

最新更新