Re: 请教Spring的分布式事务管理

[quote="jamesby"]看来你还没有真正理解什么是分布式的事务.[/quote] 看来你并没有看清楚我所说的,也许我说的不完整.我真的很希望jamesby给出分布式事务一个真正的理解是什么 我在javaeye上找到了关于分布式概念的解释: 分布式事务 分布式事务跨越两个或多个称为资源管理器的服务器。被称为事务管理器的服务器组件必须在资源管理器之间协调事务管理。如果分布式事务由 Microsoft 分布式事务处理协调器 (MS DTC))这类事务管理器或其它支持 X/Open XA 分布式事务处理规范的事务管理器进行协调,则 Microsoft® SQL Server™ 可以作为资源管理器运行。有关更多信息,请参见 Microsoft 分布式事务处理协调器文档。 [b]实际上跨越两个或多个数据库的单个 SQL Server 中的事务就是分布式事务[/b]。但是,SQL Server 对分布式事务进行内部管理;对于用户而言,其操作就像本地事务一样。 虽然这里说的是 SQL Server的分布式事务但基本也包含的分布式事务的概念。 这里对spring分布式事务控制个人做一个总结: 1。分布式事务典型应用:J2ee development without ejb 文中有这么一句话:如果你面临的分布式事务的需要(也就是,你需要让事务跨多个数据库,或者说跨越多个事务性资源),。。。。。 显然我举例中事务是跨oracle和mysql两个数据库,一个完整事务涉及到7个oracle(4)+mysql(3)表如果有一张表数据失败,所有表数据全部回滚。提交成功数据全部更新。很想问一下jamesby这是属于分布式事务控制吗? 2。spring对分布式事务的支持,J2ee development without ejb其实也提到了,需要使用spring的jta事务管理类 JtaTransactionManager,这需要你应用服务器提供Jta的功能,像tomcat就没有jta功能所以使用第三方的提供jta库支持,这样的情况下spring才能实现分布式事务的控制,这属于轻量级的事务管理。 3。关于webservice,我一直认为spring的分布式事务控制跟webservice没有直接关系,webservice只是调用我提供的service接口这当然在我的系统中。webservice只是提供了远程调用的接口是实现分布式架构的一种方法,构架一个分布式系统一个技术选择。分布式事务跟分布式系统不是一个概念。webservice跟我提到的action在某意义上是一样的他们都用调用接口,只是它远程调用接口可以实现异构系统的调用。 4。最后结论,如果我们把事务控制放在service层的话,那关键就是你的service层是否真正实现了spring支持的分布式事务的控制方式,方式其实就在第二点。 这是我的理解。 jamesby,有什么不对的地方请给详细指出。别一句看来你。。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值