首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >实体框架: PreWarm执行计划缓存

实体框架: PreWarm执行计划缓存
EN

Stack Overflow用户
提问于 2013-09-05 08:23:55
回答 1查看 920关注 0票数 1

我有一个由LINQ实体生成的复杂SQL查询。

  • 在SQL Server中没有缓存执行计划时,需要8s。
  • 在SQL Server中缓存执行计划时需要2s。

在EF或Server中有一种预置执行计划缓存的方法吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2013-09-05 08:55:00

不是的。

您有一个性能问题,并通过测量和调查瓶颈,将其作为性能问题来解决。遵循优秀的等待和排队方法。阅读了解Server如何执行查询,了解执行查询时会发生什么。

您需要隔离一些问题:

  • 它是一个冷计划缓存,如您所述,还是一个冷数据缓存(更有可能)?
  • 如果是冷计划缓存,编译真的持续6秒吗?我不信这个。
  • 如果是冷数据缓存,为什么您的查询要发出6秒的IO?
  • 即使有了温暖的缓存,查询也会消耗2秒的执行时间。为什么?它会扫描表格的端到端吗?你是不是少了一个索引或更多?(提示:是的,你知道)。

阅读“等待和排队”的论文将教你如何回答这些问题。

找出原因,而不是症状。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18631282

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档