C# 实例间共享缓存

C# 实例间共享缓存,c#,asp.net,caching,C#,Asp.net,Caching,我有一个应用程序,我为它缓存了多个数据(.net cache)。通常,此应用程序使用2或3个实例运行 每当创建一个新实例来处理请求时,内存使用量就会增加一倍。我想知道是否每个新实例都会创建自己的缓存 这是真的吗?如果是,是否有办法在同一应用程序的实例之间共享缓存 提前感谢您分享宝贵的知识 编辑: c语言# 请参见下面我们如何缓存的示例: System.Web.HttpContext ctx = System.Web.HttpContext.Current; ctx.C

我有一个应用程序,我为它缓存了多个数据(.net cache)。通常,此应用程序使用2或3个实例运行

每当创建一个新实例来处理请求时,内存使用量就会增加一倍。我想知道是否每个新实例都会创建自己的缓存

这是真的吗?如果是,是否有办法在同一应用程序的实例之间共享缓存

提前感谢您分享宝贵的知识

编辑:

c语言# 请参见下面我们如何缓存的示例:

System.Web.HttpContext ctx
            = System.Web.HttpContext.Current;
  ctx.Cache.Insert("siteViewModel", siteViewModel, null,
DateTime.Now.AddHours(Int32.Parse(siteViewModel.ApplicationSettings["dtoCacheDurationHours"])), System.Web.Caching.Cache.NoSlidingExpiration,
                 System.Web.Caching.CacheItemPriority.Default, OnCachedItemRemoved);

我根本没玩过这个,但我明白。您可能需要签出。

首先,我需要告诉您不能在多个实例之间使用缓存。
您还可以使用Windows azure缓存系统在整个应用程序中共享缓存,并且可以使用RESTful方式轻松使用该缓存。

您还可以针对您的场景评估Microsoft Velocity。Velocity将为您提供分布式和内存缓存

链接:

我们有类似的要求,但我不确定它是否适合您的情况,但我们使用web服务来缓存数据(带有安全机制),还有其他选项,如直接访问memcache服务器(位于web服务后面)或类似的,或者保持简单并使用应用程序变量?您能提供更多关于体系结构的信息以及它在什么环境中使用吗?您称之为“实例”是什么?您的应用程序是否在webfarm模式下运行?