实例间共享缓存

本文关键字:缓存 共享 实例 | 更新日期: 2023-09-27 18:10:48

我有一个应用程序,我为它缓存了几个数据(.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);

实例间共享缓存

我根本没有玩过这个,但我知道AppFabric提供分布式缓存功能。你可能想看看像这样的例子。

首先我需要告诉您,您不能在多个实例之间使用缓存。你也可以使用Windows azure缓存系统在整个应用程序中共享缓存,它很容易通过RESTful方式使用。

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

链接:使用分布式缓存构建更好的数据驱动应用