假设我在一台机器上运行 MySQL 服务器,在第二台机器上运行 Microsoft SQL Server,在第三台机器上运行我自己的自定义 Java 数据库。
我如何使用 X/Open XA 标准在所有三者之间运行分布式事务?
X/Open XA 是否指定了基于 TCP 或 UDP 的协议?我找不到这方面的任何信息。XA 似乎没有指定任何关于网络的内容,在这种情况下,它如何用于跨 MySQL、SQL Server 和自定义 Java 数据库运行分布式事务。
假设我在一台机器上运行 MySQL 服务器,在第二台机器上运行 Microsoft SQL Server,在第三台机器上运行我自己的自定义 Java 数据库。
我如何使用 X/Open XA 标准在所有三者之间运行分布式事务?
X/Open XA 是否指定了基于 TCP 或 UDP 的协议?我找不到这方面的任何信息。XA 似乎没有指定任何关于网络的内容,在这种情况下,它如何用于跨 MySQL、SQL Server 和自定义 Java 数据库运行分布式事务。
它在数据库上为 2 阶段提交事务提供支持。一般来说,它们提供了不同的 ConnectionPool 实现。如果您的 Java 应用程序在应用程序服务器上运行,您必须显式定义 XA 数据源。
XA 不需要指定任何低级网络要求。这是一个应用协议,维基百科提供了一个很好的概述:http ://en.wikipedia.org/wiki/2PC
因此,如果要实现分布式连接,所有参与者都必须提供支持 XA 的接口。