在我正在处理的 ASP.NET MVC 应用程序中,有大量静态数据(在运行时没有更新/插入此表),我需要通过按不同列分组或汇总和聚合来检索这些数据, 数学运算非常简单。
现在有很多对存储库发出的调用会减慢控制器的响应速度。您能否建议一个好的缓存框架,它允许我缓存存储库调用(使用相同的输入参数)而无需编写自定义代码
在我正在处理的 ASP.NET MVC 应用程序中,有大量静态数据(在运行时没有更新/插入此表),我需要通过按不同列分组或汇总和聚合来检索这些数据, 数学运算非常简单。
现在有很多对存储库发出的调用会减慢控制器的响应速度。您能否建议一个好的缓存框架,它允许我缓存存储库调用(使用相同的输入参数)而无需编写自定义代码
Memorycache只需添加到您的存储库中即可满足您的需求
但要记住:
MemoryCache 类类似于 ASP.NET Cache 类。MemoryCache 类具有许多用于访问缓存的属性和方法,如果您使用过 ASP.NET Cache 类,您会很熟悉这些属性和方法。Cache 和 MemoryCache 类之间的主要区别在于 MemoryCache 类已被更改,以使其可供非 ASP.NET 应用程序的 .NET Framework 应用程序使用。例如,MemoryCache 类不依赖于 System.Web 程序集。另一个区别是您可以创建 MemoryCache 类的多个实例,以便在同一个应用程序和同一个 AppDomain 实例中使用。
CacheManager 是一个用 C# 编写的 .NET 开源缓存框架,可通过 NuGet 获得。它支持各种缓存提供程序并实现了许多高级功能。
上手简单..
var cache = CacheFactory.Build<string>(
p => p.WithSystemRuntimeCacheHandle());
便于使用...
cache.AddOrUpdate("key", "region", "value", _ => "update value");
cache.Expire("key", "region", TimeSpan.FromMinutes(1));
var val = cache.Get("key", "region");
var item = cache.GetCacheItem("key", "region");
cache.Put("key", "put value");