我正在寻找在我的Web应用程序服务层缓存数据的选项(服务器层从其他系统获取数据,在Web Front End我不希望每次都对该数据进行往返 - 我想缓存比如说20分钟,如果它不是空的话,如果不去,则从缓存中加载它并检索它
我看过Dynacache基本上看起来它应该完全符合我想要的但我在使用SimpleInjector我的DI框架时遇到了问题。有没有人使用类似的NuGet包或得到类似的例子?
答案 0 :(得分:0)
我通常使用尽可能少的缓存来设置我的Web服务层,并将缓存留给客户端。如果一个网站只需要缓存一组数据,那么这就是它自己的责任。如果另一个Web应用程序需要实时访问,那么我不想阻止它。
如果我需要缓存,比如一个几乎没有变化的静态列表,那么我通常会使用类似MemoryCache的东西并设置滚动超时。为此,我通常为此编写一个包装器,它使用我的缓存服务的.Get()属性中的lambda Func作为该键的缓存源(如果该值恰好为null)。