50万奖金+官方证书,深圳国际金融科技大赛正式启动,点击报名 了解详情
写点什么

创建从 Java EE 到.NET 的事务桥梁

  • 2010-11-06
  • 本文字数:861 字

    阅读完需:约 3 分钟

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

2010-11-06 18:101726
用户头像

发布了 340 篇内容, 共 144.7 次阅读, 收获喜欢 13 次。

关注

评论

发布
暂无评论
发现更多内容

架构师知识笔记3

felix徐

爱奇艺 TensorFlow Serving 内存泄漏优化实践

爱奇艺技术产品团队

内存

他说:“只是单纯的想用Python收集一些素颜照,做机器学习使用”,“我信你个鬼!”

梦想橡皮擦

9月日更

应用层软件开发的一些总结

SOA开发者

CANN 5.0硬核技术抢先看

华为云开发者联盟

架构 AI 计算 CANN 异构计算架构

把低代码开发平台推给开百货店的朋友,对他有帮助吗?

低代码小观

低代码 企业 企业管理 管理者 管理工具

带你全面的了解二叉树

华为云开发者联盟

数据 二叉树 存储 数据检索 结点

深入 iOS 静态链接器(一)— ld64

字节跳动终端技术

ios 移动终端 火山引擎 静态链接器

技术分析| 音视频服务集群如何实现全球多中心化调度

anyRTC开发者

区块链 音视频 WebRTC 中心化调度

恒源云(GpuShare)_手把手教你如何终端登陆实例

恒源云

车联万物,有Z-ONE SOA+AIoT!

SOA开发者平台

AIOT SOA 软件定义汽车 OTA

架构师知识笔记 4

felix徐

干货打包!最新实时同步5大应用场景,4种实现方案分享(有彩蛋)

tapdata

『 JS算法-力扣557题』反转字符串中的单词 III

德育处主任

JavaScript 算法 大前端 js js算法

谁说GitHub才能出经典?来自牛客网的Java程序员逆袭手册才是YYDS

Java 程序员 面试 计算机 牛客网

Dubbo 和 HSF 在阿里巴巴的实践:携手走向下一代云原生微服务

阿里巴巴中间件

阿里云 云原生 中间件

第 3 章 -《Linux 一学就会》- 文件的基本管理和XFS 文件系统备份恢复

学神来啦

Linux 运维 文件存储 linux云计算

K6 在 Nebula Graph 上的压测实践

NebulaGraph

Alibaba官网最新版:SpringBoot+SpringCloud微服务全栈开发小册

Java 程序员 架构 面试 计算机

什么是嵌入式系统及其应用?

cdhqyj

嵌入式

Redis分布式锁,你用对了吗?

Java 架构 面试 分布式 后端

带你了解 HBase 数据模型和 HBase 架构

华为云开发者联盟

数据库 HBase 数据模型 HBase 架构 NoSQL 数据库

金九银十,Java程序员面试历程(附字节,阿里,百度,网易,美团等面经)

Java 程序员 架构 面试 后端

EMQ 映云科技加入信通院可信开源社区共同体,加速共建开源生态

EMQ映云科技

云计算 开源 物联网 开源社区 信通院

车联万物,有 Z-ONE SOA+AIoT!

SOA开发者

软件定义汽车

如何才能成为一名合格的架构师?

秋天

架构师

WeTest云手机升级,支持iOS 15全新系统

WeTest

网络协议之:WebSocket的消息格式

程序那些事

网络协议 HTTP websocket 程序那些事

Linux创建/删除用户组

在即

9月日更

VEGA:诺亚AutoML高性能开源算法集简介

华为云开发者联盟

机器学习 AutoML 网络结构 VEGA AutoML算法

创建从Java EE到.NET的事务桥梁_Java_Srini Penchikala_InfoQ精选文章