最新 Dapper VS Entity Framework 6 性能注意事项 [已关闭]

问题描述 投票:0回答:1

Dapper(这似乎是最快、最流行的“微型 ORM 工具”)之间有一些性能比较。 现在是 2014 年 9 月,我们有了 Entity Framework 6(不是 5 或 4),而且 Dapper 仍然存在。

我们将开始开发一个巨大的数据库n层应用程序(数据库有700个表)。并且一些需要运行的查询对时间非常敏感。

  1. 有人有关于 EF 6.1.x 的性能更新吗?这涉及 DbContext 中进行的一般查询。
  2. 我想我无法在 Dapper 中使用格式良好的 LINQ 查询。你有这方面的经验吗?为了额外的速度而失去 LINQ 值得吗?
  3. Dapper 仍在积极、持续的开发中吗? GitHub 告诉我,是的,但与 Subsonic 一样,这种情况可能会很快改变。
  4. 混合使用 Dapper 和 EF 是否可行?当我们需要速度时,要精巧,否则 EF。
.net performance entity-framework orm dapper
1个回答
60
投票
  1. 有人有关于 EF 6.1.x 的性能更新吗?这涉及 DbContext 中进行的一般查询?

Ans:我没有具体数字,但我已经将性能装备更新为EF6;我记不清具体结果了,但是:EF6 比旧版 EF 快很多,但在许多情况下 dapper 仍然明显更快(边缘情况也差不多)

  1. 我想我无法在 Dapper 中使用格式良好的 LINQ 查询。你有这方面的经验吗?为了额外的速度而失去 LINQ 值得吗?

Ans:这是主观的;对我们来说:是的,绝对值得 - 但我们非常关心速度。解析表达式树会产生影响,并且生成的 SQL 很少能与优秀开发人员手工编写的 SQL 相提并论

  1. Dapper 仍在积极、持续的开发中吗? GitHub 告诉我是的,但与 Subsonic 一样,这种情况可以很快改变吗?

:绝对;我想这个月我已经部署了大约 4 个版本...

  1. 将 Dapper 和 EF 混合使用是否可行?当我们需要速度时就精巧,否则EF?

Ans:是的,你可以这样做;这就是我们开始使用 dapper 的方式 - 我们用它来替换导致性能问题的 LINQ to SQL 代码;随着时间的推移,这个数量不断增加,现在我们只剩下很少的 LINQ to SQL 代码了(但仍然有一些)

© www.soinside.com 2019 - 2024. All rights reserved.