我有一个广泛使用的遗留应用程序HttpContext.Cache
......
这个应用程序现在应该迁移到Windows Azure (multi-role)。
它当然会导致缓存在不同角色上不同步的问题。
我正在考虑将我的“AzureCacheWrapper”(wrapper on )注入(我正在使用 Autofac)中,以便旧应用程序继续工作但使用 Azure 缓存来代替?
通常我们应该实现类似的东西,但不幸的是,有一些第 3 方 DLL 正在使用我们无权访问的缓存(并且不知道第 3 方库何时使用 Http 缓存)Microsoft.ApplicationServer.Caching.DataCache
HttpContext.Cache
ICacheProvider
我认为缓存提供程序不能通过 web.config(如 OutputCaching)进行配置,所以在我看来,唯一的解决方案是以某种方式将我的实现注入到运行时缓存上的 Add/Insert/Get 方法中。不幸的是,由于 System.Web.Caching.Cache (密封类)的 .NET 实现,我认为我不能重写HttpContextBase
以返回不同的缓存或注入System.Web.Caching.Cache
自身......
谢谢你的帮助!:)