代码之家  ›  专栏  ›  技术社区  ›  Fabricio Rodriguez

ASp.Net核心Web API中的多内存缓存

  •  0
  • Fabricio Rodriguez  · 技术社区  · 6 年前

    现在,我正在Startup.cs文件中添加MemoryCache服务:

    services.AddMemoryCache();
    

    然后我使用依赖注入在两个不同的位置(中间件和我编写的服务中)访问这个缓存。

    据我所知,这两个缓存是同一个实例。因此,当我向其中添加各种用户和组时,因为它们都有整数键,所以会发生冲突。我该怎么办?我曾考虑过使用两个缓存,每种类型一个,但(a)我不确定如何做到这一点,(b)我在某个地方读到不建议使用多个缓存。有什么想法吗?

    1 回复  |  直到 6 年前
        1
  •  2
  •   Robert Perry    6 年前

    是的,我以前也遇到过同样的问题,我求助于创建一个MemoryCache的扩展版本,它允许我插入不同的“存储”。。

    另外,在对“我考虑过使用两个缓存——每种类型一个”这一点的具体回答中。这就是问题所在,因为我相信IMemoryCache在默认情况下会注册为单例