首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >LINQ2SQL性能与自定义DAL与NHibernate

LINQ2SQL性能与自定义DAL与NHibernate
EN

Stack Overflow用户
提问于 2009-11-11 02:13:36
回答 2查看 960关注 0票数 3

给出一个简单的用户驱动的、高流量的web应用程序(没有花哨的报告/BI):

如果我的最大目标是性能(而不是易维护性、易查询性等),我会猜测在大多数情况下,roll-yourown DAL将是最佳选择。

然而,如果我选择Linq2SQL或NHibernate,我们谈论的性能影响大致是什么? 10%?20%?还是200%?在这两个中,哪个更快?

有没有人有任何真实的数据可以说明这一点?(是的,我知道Stackoverflow在Linq2SQL上运行。)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-11-11 03:29:06

如果你知道你的东西(特别是在SQL和ADO.NET中),那么是的-很有可能,您将能够为您的特定兴趣创建一个经过高度调整、高度优化的自定义DAL,并且总体上比Linq- to -SQL或NHibernate之类的通用对象关系映射更快。

至于有多少--如果不知道具体的表结构、数据和使用模式,就很难说清楚。我记得Rico Mariani做过一些Linq-to-SQL与原始SQL的比较,他的最终结果是Linq-to-SQL的性能达到了高技能SQL程序员的90%以上。

请参阅:http://blogs.msdn.com/ricom/archive/2007/07/05/dlinq-linq-to-sql-performance-part-4.aspx

在我看来,这并不是太糟糕,特别是如果你考虑到你获得的生产力收益--但这始终是最大的权衡:生产力与原始性能。

下面是实体框架和Linq- to -SQL上的另一个blog post与DataReader和DataTable性能的比较。

不幸的是,我没有NHibernate的任何这样的数字。

票数 3
EN

Stack Overflow用户

发布于 2009-11-11 04:41:38

在两个高流量的web应用程序中,重构ORM调用以使用ado.net的存储过程只需要1-2%的CPU和时间变化。

从ORM到自定义DAL是微优化中的一项练习。

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

https://stackoverflow.com/questions/1710029

复制
相关文章

相似问题

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