使用 XA 功能时,事务管理器将使用 XA 资源实例来准备和协调每个事务分支,然后适当地提交或回滚所有事务分支。
成都创新互联专注于企业成都全网营销、网站重做改版、慈利网站定制设计、自适应品牌网站建设、H5页面制作、商城系统网站开发、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为慈利等各大城市提供网站开发制作服务。
XA 功能的关键组件包括 XA 数据源、XA 连接、XA 资源和事务编号。
XA 数据源是连接池数据源和其他数据源的扩展,在概念和功能上相似。
每个资源管理器将有一个 XA 数据源实例,并用于分布式事务中。通常,在中间层软件中创建 XA 数据源实例。
XA 数据源产生 XA 连接。
XA 连接是池连接的扩展,在概念和功能上相似。XA 连接封装了物理数据库连接。各个连接实例是这些物理连接的临时句柄。
XA 连接实例只对应于一个会话,尽管该会话可以由多个逻辑连接实例按顺序使用,例如池连接实例。
通常,可以从中间层软件中的 XA 数据源实例获取 XA 连接实例。如果分布式事务将涉及同一数据库中的多个会话,则可以从单个 XA 数据源实例获得多个 XA 连接实例。
XA 连接产生 OracleXAResource 实例和 JDBC 连接实例。
事务管理器使用 XA 资源来协调分布式事务的事务分支。
通常,在中间层软件中,可以从每个 XA 连接实例中获得一个 OracleXAResource 实例。OracleXAResource 实例和 XA 连接实例之间存在一对一的关联。同样,OracleXAResource 实例与会话之间也存在一对一的关联。
在典型情况下,中间层组件会将 OracleXAResource 实例移交给事务管理器,以用于协调分布式事务。
因为每个 OracleXAResource 实例都对应一个会话,所以在任何给定时间只能有一个与 OracleXAResource 实例关联的活动事务分支,但也可能会有其他暂停的事务分支。
每个 OracleXAResource 实例可以操作与其相关联的会话事务分支,包括启动、结束、准备、提交或回滚。
准备步骤是两阶段提交操作的第一步。事务管理器将向每个 OracleXAResource 实例发出 PREPARE
。一旦事务管理器看到每个事务分支的操作已成功准备,它将向每个 OracleXAResource 实例发出 COMMIT
来提交所有更改。
事务 ID 用于标识事务分支。每个 ID 包括事务分支 ID 组件和分布式事务 ID 组件。这也就是分支与分布式事务关联的方式。与给定的分布式事务关联的所有 OracleXAResource 实例都具有一个事务 ID,该事务 ID 包含相同的分布式事务 ID 组件。
使用事务 ID xid
启动一个松散耦合的事务。
本文标题:创新互联OceanBase教程:OceanBase 分布式事务概述
URL网址:http://www.shufengxianlan.com/qtweb/news17/511017.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联