当前位置: 首页 > news >正文

创建从Java EE到.NET的事务桥梁(java和.net应该合并出一个新的产物)

Bill Heinzman在最近的JavaOne大会上谈到如何在企业级Java和.NET应用程序之间创建跨平台的事务桥梁。Java和.NET数据都使用类似的结构和语义来实现事务管理的解决方案,只是在协议上稍有不同,但是二者中的事务管理无法与另一种技术中的相互协作。我们很难在这两种技术之间实现并使用跨平台的事务。两段提交(two-phase commit 2PC)协议本来就是一种阻塞型的协议,它的伸缩性不好,会导致延迟、复杂性和失败概率的提高。

Bill向我们概述了在Java和.NET技术中事务管理的API。 Java资源管理接口XAResource中包含了一些方法,像start、end、prepare、forget、recover、commit、rollback等,以跨越多个数据源来管理分布式的事务。 而.NET的资源管理接口IEnlistmentNotification则提供了Prepare、InDoubt、Commit 和Rollback等方法来进行分布式事务管理。他说,Java拥有“更繁忙”的实现,其中资源管理必须处理多个启发式的分支,这是使用包含事务ID和“分支”ID的Xid令牌完成的。

他还谈到使用标准——像WS原子事务和WS协作——提供分布式事务的技术,以及如何使用共享内存、Java虚拟机到CLR(JVM-to-CLR)实现的方式直接进行连接。

WS原子事务和WS协作都是web服务的基础,但是它们的性能都很差。 数据库事务是可互操作的,但是与其它公司的资源——像消息传递(JMS和MSMQ)——就做不到了。使用互操作性跨平台的事务连接提供了.NET和Java端活动事务的整合,并且让事务管理器存在于它们各自的沙盒(sandbox)之中。跨平台的事务整合对于用户来说是透明的,并且能够与所有厂商的J2EE实现相协作。Java程序可以使用支持事务的代理来调用.NET应用程序,这个代理使用的是JNBridgePro产品,它支持.NET-to-Java和Java-to-.NET跨平台事务的两段提交。

Bill在演讲的最后做出结论,他讨论了分布式事务管理的未来、Xtreme事务处理以及云计算环境中的事务。云中的事务必须是由云管理的抽象资源,而云和传统web应用程序之间的事务必须是真正可互操作并且透明的。

 查看英文原文:Bridging Transactions from Java EE to .NET

转载于:https://www.cnblogs.com/bmate/archive/2010/11/12/1875847.html

相关文章:

  • 分享千亿物联网蛋糕 9股受益最大
  • Spring.Net框架介绍及基本配置(学习笔记一)
  • ARPG游戏DEMO
  • WP7 silverlight XNA 混合编程
  • 轻量级ORM开发系列:Model类相关信息的处理
  • 整理基础的CentOS常用命令
  • 左旋肉碱适合什么人群
  • Symantec / GuardianEdge
  • Oracle 查询表结构
  • Javascript中的文档模式-document.compatMode
  • 对流方程的有限差分数值解法(步长定律、固有差分格式、matlab程序和输出图形)...
  • 在SharePoint 2010 中使用REST时提示:未能加载类型System.Data.Services.Providers.IDataServiceUpdateProvider的解决办法...
  • visudo精确用户赋权(sudo)
  • 温州商人立下的10条军规!!!
  • 利用XP实现网络远程统一关机
  • “大数据应用场景”之隔壁老王(连载四)
  • 2019.2.20 c++ 知识梳理
  • Consul Config 使用Git做版本控制的实现
  • create-react-app做的留言板
  • C语言笔记(第一章:C语言编程)
  • es6要点
  • gitlab-ci配置详解(一)
  • golang中接口赋值与方法集
  • iOS 颜色设置看我就够了
  • javascript 哈希表
  • Java的Interrupt与线程中断
  • Java反射-动态类加载和重新加载
  • 仿天猫超市收藏抛物线动画工具库
  • 基于Android乐音识别(2)
  • 基于阿里云移动推送的移动应用推送模式最佳实践
  • ​ 全球云科技基础设施:亚马逊云科技的海外服务器网络如何演进
  • ​二进制运算符:(与运算)、|(或运算)、~(取反运算)、^(异或运算)、位移运算符​
  • ​油烟净化器电源安全,保障健康餐饮生活
  • #在线报价接单​再坚持一下 明天是真的周六.出现货 实单来谈
  • $HTTP_POST_VARS['']和$_POST['']的区别
  • (solr系列:一)使用tomcat部署solr服务
  • (windows2012共享文件夹和防火墙设置
  • (附源码)springboot社区居家养老互助服务管理平台 毕业设计 062027
  • (附源码)ssm教材管理系统 毕业设计 011229
  • (转)Android学习系列(31)--App自动化之使用Ant编译项目多渠道打包
  • (转)iOS字体
  • (转)创业家杂志:UCWEB天使第一步
  • ******之网络***——物理***
  • .gitignore文件—git忽略文件
  • .NET 5种线程安全集合
  • .NET 反射的使用
  • .NET基础篇——反射的奥妙
  • /ThinkPHP/Library/Think/Storage/Driver/File.class.php  LINE: 48
  • [ HTML + CSS + Javascript ] 复盘尝试制作 2048 小游戏时遇到的问题
  • [AX]AX2012 AIF(四):文档服务应用实例
  • [Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated c
  • [HDOJ4911]Inversion
  • [HNOI2006]鬼谷子的钱袋
  • [ISCTF 2023]——Web、Misc较全详细Writeup、Re、Crypto部分Writeup
  • [LeetCode]-Spiral Matrix III 螺旋矩阵