我最近在我的项目中添加了精彩的MiniProfiler包,它帮助我提高了页面渲染速度。
现在我注意到以下内容。对SQL页面的每个第一次请求都需要比后续访问花费更长的时间。
以下是一个例子:
首次访问:
第二次及以后的访问:
这是由LINQ或SQL Server中的某种缓存引起的吗?我在我的dbml文件中使用.NET 4和LINQ-to-SQL以及默认设置。
答案 0 :(得分:1)
有很多事情会影响第一次打击的表现。抖动可能需要做一些工作,并且可能会发挥各种级别的缓存。
也就是说,SQL Server具有非常先进的缓存功能。对服务器的重复查询比初始查询快得多,这并不罕见。