实例间共享缓存
本文关键字:缓存 共享 实例 | 更新日期: 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将为您提供分布式和内存内缓存。
链接:使用分布式缓存构建更好的数据驱动应用