Azure在内存(IMemoryCache)或Redis(IDistributedCache)中使用的缓存模型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Azure在内存(IMemoryCache)或Redis(IDistributedCache)中使用的缓存模型相关的知识,希望对你有一定的参考价值。

希望我能够澄清哪种缓存机制最适合Azure。

目前我的应用程序使用内存(IMemoryCache)来保存经常访问的数据。

这是否像在单个Web服务器上那样起作用?即存储在内存中一次并由每个请求访问?或者Azure Web服务器场复杂化了吗?

根据上面的答案,我最好使用Redis和IDistributedCache模型吗?

答案

以下是Memory Cache和DistributedCache缓存之间的区别。您可以根据您的要求选择它。

使用内存缓存的好处是简单而快速。但是,如果您在内存提供程序中使用它,则无法扩展Web应用程序,因为它未分发。

分布式内存会话状态提供程序,例如Redis缓存会话状态您的Web App可以具有简单,快速且可伸缩的会话状态提供程序。由于此提供程序将会话状态存储在缓存中,因此您的应用程序必须考虑与分布式内存缓存通信时关联的所有特征,例如瞬态网络故障。

有关使用Cache的最佳实践,请参阅Microsoft模式与实践Azure云应用程序设计和Caching guidance中的Implementation Guidance

以上是关于Azure在内存(IMemoryCache)或Redis(IDistributedCache)中使用的缓存模型的主要内容,如果未能解决你的问题,请参考以下文章

在ASP.NET Core应用中使用IMemoryCache缓存

在ASP.NET Core应用中使用IMemoryCache缓存

在ASP.NET Core应用中使用IMemoryCache缓存

在ASP.NET Core应用中使用IMemoryCache缓存

在 TEST IIS 机器上使用 C# IMemoryCache 进行永久缓存不起作用

.net Core在过滤器中获取 系统接口方法(以IMemoryCache 为例) 及HttpContext 获取系统接口