我有一个应用程序,我为它缓存了几个数据(.net缓存)。通常,此应用程序使用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);
答案 0 :(得分:0)
我根本没玩过这个,但我理解AppFabric offers distributed caching features。您可以查看some examples like this one。
答案 1 :(得分:0)
首先,我需要告诉您不能在多个实例中使用缓存。 您还可以使用Windows azure缓存系统在整个应用程序中共享缓存,并且可以使用RESTful方式轻松使用它。
答案 2 :(得分:0)
您还可以针对您的方案评估Microsoft Velocity。 Velocity将为您提供分布式和内存缓存。