摘要: 分布式事务处理( Distributed Transaction Processing , DTP )涉及多个分布在不同地方的数据库,但对数据库的操作必须全部被提交或者回滚。只要任一数据库操作时失败,所有参与事务的数据库都需要回滚。Open 组织定义的分布式事务处理模型X/Open DTP模型(19... 阅读全文
posted @ 2013-06-08 23:09 Net-Spider 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 适用环境操作系统:windows 2003数据库:sql server 2000/sql server 2005使用链接服务器进行远程数据库访问的情况一、 问题现象在执行分布式事务时,在sql server 2005下收到如下错误:消息 7391,级别 16,状态 2,过程 xxxxx,第 16 行无法执行该操作,因为链接服务器 "xxxxx" 的 OLE DB 访问接口 "SQLNCLI" 无法启动分布式事务。在sql server 2000下收到如下错误:该操作未能执行,因为 OLE DB 提供程序 'SQLOLEDB' 无法启动分布 阅读全文
posted @ 2013-06-08 23:04 Net-Spider 阅读(328) 评论(0) 推荐(0) 编辑
摘要: 随着网络环境的日益普及,新的应用呈现出许多相似的特点那就是开放性和分布性。对于Internet商业应用来说分布性和开放性更是最基本的要求,并且随着人们对电子商务、安全防范等复杂的Web应用需求的增加,Web应用不仅仅是对只读信息的存取,面向商业活动的读取将迅速增加。这意味着,从简单的数据系统全球联网查询,逐步转向更具有分布式数据库系统特色的应用环境。我们知道,研究分布式数据库系统的目的、动机主要是组织目标,即为应用所驱动。开放性、分布性不仅是当前新应用的要求,也同样是分布式数据库系统的优势所在。可以预料在当前的网络、分布、开放的大环境下,分布式数据库系统将会有更加长足的发展和应用。第三章 分布 阅读全文
posted @ 2013-06-08 23:00 Net-Spider 阅读(574) 评论(0) 推荐(0) 编辑
摘要: 关于Dubbo服务框架的分布式事务,虽然现在不急着做,但可以讨论一下。我觉得事务的管理不应该属于Dubbo框架,Dubbo只需实现可被事务管理即可,像JDBC和JMS都是可被事务管理的分布式资源,Dubbo只要实现相同的可被事务管理的行为,比如可以回滚,其它事务的调度,都应该由专门的事务管理器实现。在Java中,分布式事务主要的规范是JTA/XA,其中:JTA是Java的事务管理器规范,XA是工业标准的X/Open CAE规范,可被两阶段或三阶段提交及回滚的事务资源定义,比如某数据库实现了XA规范,则不管是JTA,还是MSDTC,都可以基于同样的行为对该数据库进行事务处理。在JTA/XA中,主 阅读全文
posted @ 2013-06-08 22:49 Net-Spider 阅读(743) 评论(0) 推荐(0) 编辑
摘要: A distributed transaction is an operations bundle, in which two or more network hosts are involved. Usually, hosts provide transactional resources, while the transaction manager is responsible for creating and managing a global transaction that encompasses all operations against such resources. Dist 阅读全文
posted @ 2013-06-08 22:37 Net-Spider 阅读(304) 评论(0) 推荐(0) 编辑
摘要: 最近通过 pkBlogs.com 的服务又可以访问 BlogSpot 的内容了。看到了一篇有趣的文章。Andrew Clarke 在 How To Be A Good Guru 一文中提到了 How to Answer Questions the Smart Way 这个有趣的话题, 并且模仿 提问的智慧 给出了”回答的智慧”的 10 条准则。来看一下这 10 条(翻译了一下,并适当的作了一点注释):1. Don’t answer questions to which you don’t know the answer( 不回答自己不知道答案的问题 )2. Explain yourself ( 阅读全文
posted @ 2013-06-08 21:51 Net-Spider 阅读(555) 评论(0) 推荐(1) 编辑
摘要: 在前面一篇给出的Transaction的定义中,信息的读者应该看到了一个叫做DepedentClone的方法。该方法对用于创建基于现有Transaction对 象的“依赖事务(DependentTransaction)”。不像可提交事务是一个独立的事务对象,依赖事务依附于现有的某个事务(可能是可提交事 务,也可能是依赖事务)。依赖事务可以帮助我们很容易地编写一些事务型操作,当环境事务不存的时候,可以确保操作在一个独立的事务中执行;当环境事务存在 的时候,则自动加入其中。一、依赖事务(Dependent Transaction)依赖事务通过DependentTransaction类型表示,Dep 阅读全文
posted @ 2013-06-08 20:53 Net-Spider 阅读(949) 评论(0) 推荐(0) 编辑
摘要: 在.NET 1.x中,我们基本是通过ADO.NET实现对不同数据库访问的事务。.NET 2.0为了带来了全新的事务编程模式,由于所有事务组件或者类型均定义在System.Transactions程序集中的System.Transactions命名空间下,我们直接称基于此的事务为System.Transactions事务。System.Transactions事务编程模型使我们可以显式(通过System.Transactions.Transaction)或者隐式(基于System.Transactions.TransactionScope)的方式进行事务编程。我们先来看看,这种全新的事务如何表示 阅读全文
posted @ 2013-06-08 20:48 Net-Spider 阅读(446) 评论(0) 推荐(0) 编辑
摘要: [续上篇] 当基于LTM或者KTM的事务提升到基于DTC的分布式事务后,DTC成为了本机所有事务型资源管理器的管理者;此外,当一个事务型操作超出了本机的范 围,出现了跨机器的调用后,本机的DTC需要于被调用者所在机器的DTC进行协助。上级对下级(包括本机DTC对本机所有资源管理器,以及上下级DTC) 的管理得前提是下级在上级那里登记,即事务登记(Transaction Enlist)。所有事务参与者,包括所有资源管理器和事务管理器(即DTC)在进行了事务等级完成之后形成了一个树形的层级结构,该结构的形成是后续的 事务提供成为可能,因此我们将其称之为事务提交树(Transaction Commi 阅读全文
posted @ 2013-06-08 20:35 Net-Spider 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 通过上一篇的 介绍,我们知道了SOA真正需要的是一个能够协调服务操作直接(通过服务自身访问的资源)或者间接(通过被调用服务访问的资源)访问的所有资源的分布式事 务管理系统,这是一个复杂的架构体系。WCF,作为Windows平台下基于SOA的分布式框架,对分布式事务提供全面的支持。不过,WCF并不是另起炉 灶,而是充分地利用了Windows现有的事务控制基础架构。本节着重讨论Windows事务处理模型,首先来看看在这个模型中各个事务参与者各自扮演怎 样的角色。对于所有的事务参与者,按照各自在整个事务生命周期各个阶段所承担的职能,大致扮演着如下三种角色:应用(Application)、服务(Ser 阅读全文
posted @ 2013-06-08 20:30 Net-Spider 阅读(174) 评论(0) 推荐(0) 编辑