我是新手(精确地即将使用它)。我想知道它是如何工作的。它缓存了一些结果,因此以后更快获得它。在github页面上,它没有说明释放内存的任何内容。我知道这个nuget的性能,但是没有任何关于内存溢出的危险吗?是否有时以某种方式释放缓存的内存?
答案 0 :(得分:0)
由于查询量很大,Web层通常达到100%CPU。每秒有数百个调用,LINQ到SQL的CPU开销构成了每次调用的动态方法,这给Web服务器带来了太多的负担。
要解决此问题,Dapper.Net会缓存有关每个查询的信息。这种全面的缓存有助于它从查询中生成对象,速度是LINQ to SQL的两倍。目前,缓存由两个ConcurrentDictionary对象处理,这些对象永远不会被清除。将来,缓存算法可以使用LRU缓存来降低内存压力。