我创建了一个Azure函数应用程序,并在其中创建了几个函数,并且要求获取每个Azure函数中使用的某些缓存数据。因此,我想在函数应用程序请求管道中添加一些内容(例如Asp.Net中的HttpModule),该函数将针对对函数应用程序的每个请求执行,并将返回缓存的数据。
任何建议!
答案 0 :(得分:1)
对于缓存的数据,您可以使用内存将其存储在本地,也可以使用Redis Cache进行分发。 如果您尝试构建有状态功能,则可能还需要检查持久功能。 https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-overview
答案 1 :(得分:0)
使用nuget包Microsoft.Extensions.Caching.Memory。
创建如下所示的类,将其注入以使用其保存,获取方法。
public class MemoryCacheService
{
private readonly IMemoryCache _cache = new MemoryCache(new MemoryCacheOptions());
//lives one day
public void SaveProvider(string provider)
{
_cache.Set("provider", provider, new MemoryCacheEntryOptions { AbsoluteExpirationRelativeToNow = TimeSpan.FromDays(1) });
}
public string GetProvider()
{
return _cache.Get("provider") as string;
}
}