ADO.NET、NBear和NHibernate和IbatisNet简单读写性能比较

时间:2010-02-06 12:29:20  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:读写性能比较中的测试代码修改.      主要修改:   1.ADO.NET的测试使用microsoft的SqlHelper.   2.测试引用的版本分别为:NBear V3.7.2.4,IBatisNet V1.6.1,NHibernate1.0.1.0 for net1.1   3.使用Stopwatch计时      说明(引用原Teddy测试一文):   ...
  正文:下载测试示例程序(运行前请先参看压缩包里的说明文件:初始数据和修改数据库链接)
  http://www.cnblogs.com/Files/try/NBear_VS_NH_Performance.rar
  
  测试代码基于Teddy的ADO.NET、NBear和NHibernate简单读写性能比较中的测试代码修改.
  
  主要修改:
  1.ADO.NET的测试使用microsoft的SqlHelper.
  2.测试引用的版本分别为:NBear V3.7.2.4,IBatisNet V1.6.1,NHibernate1.0.1.0 for net1.1
  3.使用Stopwatch计时
  
  说明(引用原Teddy测试一文):
  本测试使用Northwind数据库的Categories、Customers和Products三个表(初始数据每个表1000条数据),测试比较 ADO.NET、NBear和NHibernate的读写性能。公平起见,测试代码并没有使用太多特别框架的独有功能或缓存,在实际测试前分别都进行了预读(保证元数据等都在第一次运行时已载入)。
  
  读测试每次循环分别读取Categories、Customers和Products三个表的全部数据,三个组件分别返回DataSet,强类型实体数组和IList,虽然返回的数据类型不同,但是,实际上都包括了对返回数据的填充操作,因此,应该是相对公平的。3个ORM对Product表数据列表都使用了1对1形式(即Product信息中包含Category信息)
  结果显示NBear的性能近似于ADO.NET;NHibernate的独性能要差5倍左右。
  
  写测试每次循环分别新建、更新并删除Categories、Customers和Products三个表中的各一条记录。ADO.NET由于是直接执行SQL的,速度最快是肯定的。NBear相比ADO.NET慢约3倍,NHibernate则大约慢2倍。
  
  鉴于一般的系统读操作的频率远高于写操作,NBear的平均性能应该要比NHibernate好处不少。
  
  测试并不完全,仅作参考。测试代码如有错误,请指正.
  
  我的测试结果:nbear性能最差.(和teddy测试差距很大.黑灰色底为原Teddy测试结果)
  程序以console方式运行,Release编译.运行3次.以第3次为结果.

ADO.NET、NBear和NHibernate和IbatisNet简单读写性能比较》由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Programming/aspnet/12823.html


关键字:

关于《ADO.NET、NBear和NHibernate和IbatisNet简单读写性能比较》文章的评论

站内搜索: 高级搜索

热门搜索: Windows style 系统 tr IP QQ CPU 安装 function 注册 if td