ORM的性能争议】的更多相关文章

闲着无聊,测试了一下公司ORM的性能,和其它的ORM相比,该有的都有了,不该有的也勉强塞了进去,总体考虑是并发与扩展性问题,譬如读写分离,消息总线服务整合,缓存内置. 测试机是I7,16G内存,这里只根据测试场景写了最简单的数据库操作测试. 采用了火地晋的测试工具,下面是测试代码 public class DataTest :ITest { public void Init() { } public bool Insert() { var _repository = new Repository…
从刚刚开始接触ORM到现在已有超过八年时间,用过了不少ORM框架也了解了不少ORM框架,看过N种关于ORM框架的相关资料与评论,各种言论让人很难选择.在ORM的众多问题中最突出的问题是关于性能方面的问题,因此我在看了国外的一遍文章(Dapper vs Entity Framework vs ADO.NET Performance Benchmarking)后受到启发,在这个文章的基础上扩展了测试用例分享给大家. 模型准备 数据初始化 测试用例说明 测试结果 结果分析 模型准备 用于测试是模型是基…
最近找工作面试,问到一些过去的工作和项目经验.我把公司用到的ORM框架(LLBL Gen)拿出来谈一谈,说一下他的优势,对方却一直追问ORM的好处,性能方面的问题,让我有时候都不知道如何回答,产生了不小的压力. 坦白来说,自学生时代(2004)就对NHibernate的大名敬仰已久,也完整的学习过它的映射文件写法,数据读取方法,当时对复杂的Xml映射配置文件了熟于胸.那时,微软的Application Block还比较流行,这项技术演变为后来的Enterprise Library,在第二份工作,…
model: 先给一个简单的表结构 from django.db import models class User(models.Model): username=models.CharField(max_length=32) pwd=models.CharField(max_length=64) pd=models.ForeignKey('Depart',on_delete=models.CASCADE) class Depart(models.Model): title=models.Cha…
扯淡 当前市面上 ORM 很多,有跑车型的,如 Dapper,有中规中矩型的,如 Mybatis.Net,也有重量型的,如 EntityFramework 和 NHibernate,还有一些出自草根之手的,如 Chloe.ORM.各式各样,层出不穷.试问,为何要重复造轮子?很简单,咱来自火星,目前地球上还没一款轮子适合咱这辆火星车~ 为加深对各个 ORM 框架的了解,同时也想看看咱自己的框架性能如何,也可以让对 Chloe 感兴趣的同学有所了解,今儿,做个性能比较测试.测试对象为大家较熟悉的 E…
摘要:VB/C#.Net实体代码生成工具(EntitysCodeGenerate)[ECG]是一款专门为.Net数据库程序开发量身定做的(ORM框架)代码生成工具,所生成的程序代码基于OO.ADO.NET.分层架构.ORM及反射+工厂设计模式等.支持.Net1.1及以上版本,可用于Oracle.SqlServer.Sybase.DB2.MySQL.Access.SQLite.PostgreSQL.DM(达梦).PowerDesigner文件.Informix.Firebird.MaxDB.Exc…
EntityFramework.Dapper vs 草根框架性能 扯淡 当前市面上 ORM 很多,有跑车型的,如 Dapper,有中规中矩型的,如 Mybatis.Net,也有重量型的,如 EntityFramework 和 NHibernate,还有一些出自草根之手的,如 Chloe.ORM.各式各样,层出不穷.试问,为何要重复造轮子?很简单,咱来自火星,目前地球上还没一款轮子适合咱这辆火星车~ 为加深对各个 ORM 框架的了解,同时也想看看咱自己的框架性能如何,也可以让对 Chloe 感兴趣…
引言:因为接触过多个ORM,但使用的时候都遇到了各自的一些不够理想的地方,从最早开始开始公司自己分装的,到后面用EF,以及Dapper和DapperExtensions  到现在用的FluentData,就说说我自己的使用体验,在这几个相比之下,Dapper应该是最轻量级,而且性能也是最好的,但是相对比较简单了点.EF的最新版也没去使用,所以现在不是很了解,EF在这几个相比一下,功能是最强大的,但是启动加载慢,以及复杂的功能,后续人优化麻烦.FluentData 怎么说呢,用的都挺好用,而且语法…
SQL译为按每一次情况的办理,SP意为存储过程,ORM就是对象-关系映射,比如Hibernate 一,演变  刚开始的时候,只有sql语句,即可以用交互模式一句一句执行, 也可以用批模式执行,多行sql语句一次提交执行.  很快人们发现用批模式执行的一堆sql语言可以用过程的形式,事先存放到数据库里面,这就变成了存储过程.  随着面向对象技术的成熟,从程序中可以自动生成sql语句,这就是ORM 二,性能  如果我们把一堆sql,以批的方式一次送入到服务器,那么服务器,会对这一堆sql进行缓存,当…
众所周知,“ORM”和“性能问题”常常一起出现.ORM通过对开发人员隐藏SQL细节可以大大的提高生产力.然而,它们很容易产生一些未被发现的荒谬查询.通常情况下,数据库管理员可以通过交叉引用有问题的存储过程来查找问题代码.但是,ORM依赖于动态生成的SQL,便很难这么做了.所以,我们要寻找一些更有效的ORM分析工具. NHibernate NHibernate分析器(NHProf)是我们期待的入门级产品.除了有完整的统计信息外,它还显示了最近完整的SQL调用列表,并使用堆栈来反向跟踪调用它的代码.…