首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >EF 4.0中看似无限的堆栈跟踪和负载下的查询性能较差

EF 4.0中看似无限的堆栈跟踪和负载下的查询性能较差
EN

Stack Overflow用户
提问于 2011-08-08 13:51:35
回答 1查看 519关注 0票数 14

在大型EF 4.0模型(700+实体)上,我们在System.Data.Objects.ObjectContext.CreateObjectSet(string)上的性能很差。对此的调用是由类似于context.Users.FirstOrDefault(u => u.userId = 100)的查询触发的。

通常情况下,查询执行得很好,但在负载下,查询执行得不是很好。我们正在对使用此查询的页面运行20个并发用户负载。此页面的应用程序处于分析模式下,即我们在运行此小负载测试时使用Visual Studio 2010性能分析器。分析器正在使用“采样”模式。

该应用程序是使用Windows4.0/WindowsMVC3.0构建的,并在运行负载测试时托管在ASP.NET 7服务器上的ASP.NET 7.5上。

分析报告显示了一个似乎是“无限”的调用堆栈,即有很多对下面几行的调用。

代码语言:javascript
复制
System.Data.Mapping.DefaultObjectMappingItemCollection.LoadObjectMapping
    System.Data.Mapping.DefaultObjectMappingItemCollection.LoadAssociationTypeMapping
        System.Data.Mapping.DefaultObjectMappingItemCollection.LoadObjectMapping
            System.Data.Mapping.DefaultObjectMappingItemCollection.LoadAssociationTypeMapping

性能不佳和看起来如此无限的调用堆栈的原因是什么?

EN

回答 1

Stack Overflow用户

发布于 2011-08-26 23:35:42

另一件值得尝试的事情是优秀的实体框架分析器-它为我们省去了许多调试性能问题的麻烦-提供了比SQL Profiler更多的功能,您可以看到每个ObjectContext和方法/源代码行创建了哪些查询/对象,等等- http://efprof.com/

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

https://stackoverflow.com/questions/6978207

复制
相关文章

相似问题

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