在服务器层缓存数据

本文关键字:数据 缓存 服务器 | 更新日期: 2023-09-27 18:09:18

我正在寻找在我的web应用程序的服务层缓存数据的选项(服务器层从其他系统和web前端获取数据,我不想每次都为该数据往返-我想缓存它说20分钟,如果它不是空的,从缓存中加载它,如果不去检索它

我看了看Dynacache,基本上看起来好像它应该做我想要的,但我一直有问题,让它与SimpleInjector我的DI框架工作。有没有人使用过类似的NuGet包或者有类似的例子?

在服务器层缓存数据

我通常使用尽可能少的缓存来设置我的web服务层,并将缓存留给客户端。如果一个网站只需要缓存一组数据,那么这是它自己的责任。如果另一个web应用程序需要实时访问,那么我不想阻碍它。

如果我确实需要缓存,比如一个几乎不会改变的静态列表,那么我通常使用MemoryCache之类的东西并设置滚动超时。为此,我通常为此编写一个包装器,在缓存服务的. get()属性中使用lambda Func作为该键的缓存源(如果值恰好为空)。