我有一个使用ASP.NET MVC 5编写的应用程序,它产生了许多数据库事务。
我没有专门用于报告的服务器从属,因此我需要在Entity framework中使用二级缓存来缓存报告生成的所有查询。
这里的想法是减少必须命中数据库的查询量,特别是当多个用户尝试查看相同的报告时。因此,如果有5个人想要查看仪表板,则只有一个人会命中数据库,其余人将读取存储在缓存中的数据集。这应该提高报告性能,减少数据库锁定并提高我的应用程序性能。
是否可以在Entity framework中使用Memcached或Redis,其中数据集在查询执行后缓存一段时间?当然,在执行查询之前,将检查缓存是否存在现有数据集,然后才会对服务器进行硬查询。
我遇到了NCache,它似乎正是我想要实现的,但不幸的是它的价格很高。
我没有专门用于报告的服务器从属,因此我需要在Entity framework中使用二级缓存来缓存报告生成的所有查询。
这里的想法是减少必须命中数据库的查询量,特别是当多个用户尝试查看相同的报告时。因此,如果有5个人想要查看仪表板,则只有一个人会命中数据库,其余人将读取存储在缓存中的数据集。这应该提高报告性能,减少数据库锁定并提高我的应用程序性能。
是否可以在Entity framework中使用Memcached或Redis,其中数据集在查询执行后缓存一段时间?当然,在执行查询之前,将检查缓存是否存在现有数据集,然后才会对服务器进行硬查询。
我遇到了NCache,它似乎正是我想要实现的,但不幸的是它的价格很高。