JiveJdon Community Forums
在线285人 J道首页 | 论坛首页 | 培训咨询 | 开源框架 | 精华 | 查搜 | 注册 | 登陆 |
首页 » 论坛 » 设计模式、框架和架构
 
Go back to the topic listing   返回主题列表
???en_US.forumThreadNext.name??? 下一主题
这个主题共有 0 回复 / 1 页 [ ]  发表新帖子  回复该主题贴
banq

发表文章: 8928
注册时间: 2002年08月03日 17:08
适合长时间操作机制J2EE Activity Service 发表: 2004年11月21日 18:22 回复
我们知道:事务必须服从ISO/IEC所制定的ACID原则,ACID是原子性(atomicity)、一致性(consistency)、隔离性(isolation)和持久性(durability)的缩写。事务的原子性表示事务执行过程中的任何失败都将导致事务所做的任何修改失效。一致性表示当事务执行失败时,所有被该事务影响的数据都应该恢复到事务执行前的状态。隔离性表示在事务执行过程中对数据的修改,在事务提交之前对其他事务不可见。持久性表示已提交的数据在事务执行失败时,数据的状态都应该正确。


但是,如果你的应用事务超过几秒,那么ACID就帮不了你,更不用说持续几个小时、月和年的事务了,这是典型的long transaction problem,在过去几年中,没有人发现它的解决方案。

关键问题是如何实现ACID中的I(隔离性),并发控制算法中并没有超过一段时间操作的。目前有两种流派:悲观并发控制算法(Pessimistic concurrency control );乐观并发控制算法Optimistic concurrency control algorithms 。

Saga诞生了,Saga需要你定义compensating transactions,目前Web服务采取了compensating transactions. CORBA 已经定义了Activity Servic在Java世界有JSR 95: J2EETM Activity Service [JSR95] 用于扩展的事务。

对长时间操作事务感兴趣,继续参考原文:
http://www.theserverside.com/articles/article.tss?l=AcidShortDoses
这个主题有 0 回复 / 1 页 [ ]
 
Go back to the topic listing   返回主题列表    返回页首  返回页首
???en_US.forumThreadNext.name??? 下一主题
热点TAG: AOP cache DDD EJB 集群 设计模式 Hibernate IOC JiveJdon OO RBAC Spring Struts
查询本论坛内 回复超过的热门帖子
快速发表回复
标题
 
粗体 斜体 下划线 插入图片 插入代码 插入url链接 插入附件
内容
 

解惑之道在J道 ,打造中国最具影响力的的企业软件社区
OpenSource JIVEJDON v3.0 Powered by JdonFramework Code © 2002-07 jdon.com

anti spam