目前哪个ORM框架适合多进程并发更新数据库

问题描述

一直用hibernate,但hibernate复杂的缓存策略,导致它不适合多进程并发更新数据库的操作。问题1:我对hibernate的理解有误吗?问题2:如果hibernate确实不适合以上情景,哪个ORM框架在这方面要好一点?请多指教!

解决方案

解决方案二:
该回复于2011-01-12 13:14:32被版主删除
解决方案三:
ibatis吧hibernate相对来说更重了
解决方案四:
应该是ibatiS,,我刚刚用了。
解决方案五:
引用楼主z_berry的回复:

一直用hibernate,但hibernate复杂的缓存策略,导致它不适合多进程并发更新数据库的操作。问题1:我对hibernate的理解有误吗?问题2:如果hibernate确实不适合以上情景,哪个ORM框架在这方面要好一点?请多指教!

我还是想确认一下,我说的第一个问题,到底对不对,如果对的话,那hibernate在实际使用起来会受到很大的限制啊。
解决方案六:
我记得ehcache缓存是支持集群的吧?配置一下就好
解决方案七:
也不会啊,hibernate用着还是挺舒服的,关键是怎么用了
解决方案八:
使用Ibatis吧我们公司就用。。。
解决方案九:
引用6楼wpffeihuwpf的回复:

也不会啊,hibernate用着还是挺舒服的,关键是怎么用了

那比方说有个项目是有多个部分组成,肯定会有多个程序在更新数据库,那么如何解决让hibernate每次查询都执行一次sql?
解决方案十:
引用8楼z_berry的回复:

引用6楼wpffeihuwpf的回复:也不会啊,hibernate用着还是挺舒服的,关键是怎么用了那比方说有个项目是有多个部分组成,肯定会有多个程序在更新数据库,那么如何解决让hibernate每次查询都执行一次sql?

我认为每次查询是很正常的!
解决方案十一:
Ibatis............................

时间: 2024-09-19 10:05:04

目前哪个ORM框架适合多进程并发更新数据库的相关文章

ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库

原文:ASP.NET MVC 使用 Petapoco 微型ORM框架+NpgSql驱动连接 PostgreSQL数据库 前段时间在园子里看到了小蝶惊鸿 发布的有关绿色版的Linux.NET--"Jws.Mono".由于我对.Net程序跑在Linux上非常感兴趣,自己也看了一些有关mono的资料,但是一直没有时间抽出时间来研究这个,小蝶惊鸿的博客又激起了我的兴趣,我花了四天的时间,终于在Liunx上跑起了属于我自己的应用程序,其中数据库使用到了PostgreSQL数据库.对于数据库的选用

自己动手写ASP.NET ORM框架(二):AdoHelper支持多数据库操作的封装(2)

在上一篇文章中已经分析了AdoHelper的部分代码,接下来将继续分析剩余的部分代码,这里分析ExecuteNonQuery方法的实现,代码块1-1: // <summary>//通过提供的参数,执行无结果集的数据库操作命令// 并返回执行数据库操作所影响的行数.// </summary>// <param name="connectionString">数据库连接字符串</param>// <param name="co

在Linq to Sql中管理并发更新时的冲突(3):使用记录的时间戳

在<在Linq to Sql中管理并发更新时的冲突(2):引发更新冲突>一文中 ,我们描述了Linq to Sql检测在更新时是否产生了冲突的基本方法:将该记录 每个字段原来的值和更新时的值进行对比,如果稍有不同则意味着记录被修改过 ,因此产生了更新冲突.不过您是否有这样的感觉,这种方法实在累赘了一些? 如果一个表中有数十个字段,那么更新就必须完整地检测一遍(不过我会在今后 的文章中提到这方面的控制).再者,如果其中某一个字段储存了洋洋洒洒上万 字的文章,那么在验证时仅仅是将它从Web服务器发

在Linq to Sql中管理并发更新时的冲突(1) 预备知识

无论与目前的ORM框架相比有没有优势,Linq to Sql在语言和平台的级别上 为我们提供了一种新的操作对象和数据的方式,在一定程度上为我们解决了 Object != Data的问题.在实际应用中,对于数据库的操作往往有着天生的并发 性,因此在更新数据时可能会产生冲突.有些时候,如果没有合理的解决冲突问 题,轻则让用户摸不着头脑,重则让系统数据处于一种不一致的状态.Linq to Sql自然考虑到了这一点,本系列讨论的内容,就是在使用Linq to Sql时,如何 管理并发更新时产生的冲突.

写一个ORM框架的第一步(Apache Commons DbUtils)

新一次的内部提升开始了,如果您想写一个框架从Apache Commons DbUtils开始学习是一种不错的选择,我们先学习应用这个小"框架"再把源代码理解,然后写一个属于自己的ORM框架不是梦. 一.简介 DbUtils是Apache下commons工具集中的一个小工具,它主要是对JDBC封装的ORM小工具,简化了JDBC的操作.之所以把它称之为工具而不是框架,是因为它和其他的ORM框架还是由很大的区别(例如Hibernate).DbUtils并不支持所谓的聚合关联映射.缓存机制.实

银行取款[多线程]{未进行线程同步}(junit不适合多线程并发单元测试)

        由于计算机多任务.多进程.多线程的支持,使得计算机资源的服务效率提高,服务器对请求的也使用线程来相应,所有,代码中涉及到同时对共享数据的操作,将在 多线程环境中操作数据,导致数据安全问题.      经典例子:老婆(朱丽叶)老公(罗密欧),使用银行卡和存折,或者网银等,同时对同一账户操作的安全问题.      如果要保证多线程下数据安全,就要实现线程同步(例如:一间小厕所,就得有一个锁,保证同一时间为一个人服务).其他文章讲: 此处用多线程实现,同时取款的模拟实现,未进行线程同步

OEA ORM 框架中的冗余属性设计

OEA 框架提供了多种方式来优化分布式数据查询的性能,本篇将会说明如何以声明 OEA 冗余属性的方式,来实现轻量级的数据冗余,以减少关联查询次数及网络数据传输量,提高分布式应用程序性能.   冗余属性功能说明 OEA 冗余属性在框架层面提供了一种易用的机制,把指定冗余路径的关系对象中的属性值复制到本对象中,以解决关联查询.关联数据量等性能问题.应用开发人员只需要简单的定义一个冗余属性,而框架会自动完成对冗余属性的赋值.更新操作.   ORM 中的 N+1 问题示例 在进销存示例中,采购订单的列表

小巧优美的ORM框架-doodads入门指南

关于.net下的ORM框架,大家最为耳熟的可能就是NHibernate了,当然,很多公司正在使用自己开发的ORM框架,笔者至少见过3家不同公司的ORM框架,其实都是大同小异,借助于codesmith.mygeneration等代码生成工具,自己开发一个ORM框架也不是什么难事,关键的问题是,你能不能设计出代码优美简洁.功能灵活.定制方便以及部署容易的ORM框架. 我去年开始热衷NHibernate(与其说热衷,不如说是迷信,因为后来越来越多的证据证明,公司自己的那套用了几年的使用Excel生成实

Spring事务管理--多个ORM框架在使用时的情况分析

   公司的项目已经接近尾声了,总结一下项目中用到的技术,我发现项目中的有些东西还是挺模糊的,只是知道这么用就行了.并不清楚其中的原理.由于公司的项目比较老,是7年前的一个项目了,中间一直有人在维护,也是在这个过程中不断融入了新的东西,比如就项目的持久化这块来说,就用了ibatis.mybatis.hibernate.spring JDBC四种混合的框架.究其原因只能说是历史遗留问题,就不做过多的解释了.但是这么多持久化的框架如何协同工作的,尤其是事务的控制,一个系统中使用如此多的持久化框架是,