Java Transaction API

来源:互联网 发布:寻侠洗髓软件 编辑:程序博客网 时间:2024/05/21 06:56

  分布式事务

  分布式事务是指事务的参与者、支持事务的服务器、资源服务器以及事务管理器分别位于不同的分布式系统的不同节点之上。简言之,同时操作多个数据库保持事务的统一,达到跨库事务的效果。

  JTA

  JTA,即Java Transaction API,JTA允许应用程序执行分布式事务处理---在两个或多个网络计算机资源上访问并且更新数据。JDBC驱动程序的JTA支持极大地增强了数据访问能力。

  JTA和JTS

  Java事务API(JTA:Java Transaction API)和它的同胞Java事务服务(JTS:Java Transaction Service),为J2EE平台提供了分布式事务服务(distributed transaction)。

  一个分布式事务(distributed transaction)包括一个事务管理器(transaction manager)和一个或多个资源管理器(resource manager)。

  一个资源管理器(resource manager)是任意类型的持久化数据存储。

  事务管理器(transaction manager)承担着所有事务参与单元者的相互通讯的责任。

  JTA与JDBC

  JTA事务比JDBC事务更强大。一个JTA事务可以有多个参与者,而一个JDBC事务则被限定在一个单一的数据库连接。下列任一个Java平台的组件都可以参与到一个JTA事务中:JDBC连接、JDO PersistenceManager 对象、JMS 队列、JMS 主题、企业JavaBeans(EJB)、一个用J2EE Connector Architecture 规范编译的资源分配器。

  JOTM

  JOTM (Java Open Transaction Manager)是一个开源独立的事务管理器,支持分布式事务,Spring3.X已经不再支持JOTM.

  Atomikos

  Atomikos TransactionsEssentials是一个为Java平台提供增值服务的并且开源类事务管理器,支持分布式事务,本文所采用的技术。

  Atomikos是目前在分布式事务管理中做得相当不错的开源软件。有10年以上的经验,Atomikos保障您的关键事务和防止昂贵的数据丢失在发生系统故障或事故中。Atomikos支持XA(全局事务)和NON-XA(非全局事务),NON-XA效率高于XA.本文主要是讲XA事件,因为要在不同的数据库中操作多张表。

  接下来说一下Spring.x+Hibernate中集成Atomikos构建JTA的分布式事务

0 0
原创粉丝点击