我有一个用 ASP.NET MVC 5 编写的应用程序。这会生成大量数据库事务。
我没有服务器从服务器专门用于报告,因此我需要在实体框架中使用二级缓存来缓存报告生成的所有查询。
这里的想法是减少必须访问数据库的查询量,尤其是当多个用户试图查看同一个报告时。因此,如果我有 5 个人想要查看仪表板,则只有一个人会访问数据库,其余的人将读取存储在缓存中的数据集。这应该会提高报告性能,减少数据库锁定并提高我的应用程序性能。
是否可以将Memcached或Redis与实体框架一起使用,其中在查询执行一定时间后缓存数据集。当然,在执行查询之前,将在服务器上执行硬查询之前检查缓存中是否存在现有数据集。
我遇到了NCache,这似乎正是我想要完成的,但不幸的是它很昂贵。