将System.Web缓存迁移到Azure

时间:2017-07-10 13:26:37

标签: asp.net vb.net azure caching azure-web-sites

我有一些最近从IIS迁移到Azure App Service的旧版Web窗体应用程序。使用 System.Web.HttpContext.Current.Cache 的应用程序区域似乎不再有效。在IIS中,有一些功能仍然可以完美地运行,不再在Azure中缓存数据。

使用此方法或替换使用的缓存的正确方法是什么?

If Not HttpContext.Current.Cache("cacheTemptTable") Is Nothing Then
     dt = CType(HttpContext.Current.Cache("cacheTemptTable"), DataTable)
End If

1 个答案:

答案 0 :(得分:1)

HttpContext.Current.Cache可以提供每个实例的缓存。对于具有1个实例的Web应用程序计划,它不会有任何问题。如果您的Web应用程序计划有多个实例,则实例之间的数据会不一致。

对于您的问题,您可以将缓存数据存储在共享/分发位置。例如Azure Redis缓存。有关如何使用Azure Redis缓存,以下链接供您参考。

How to Use Azure Redis Cache