gpt4 book ai didi

java - 没有 JDBC 的 Atomikos 或 JBossTS

转载 作者:行者123 更新时间:2023-11-28 22:14:33 26 4
gpt4 key购买 nike

如果数据源不能通过 JDBC 调用,是否可以实现以前的事务管理器之一?

已编辑

我想为现有应用程序创建插件。我的插件应负责记录长期运行的工作流事务的读写访问。我的插件还应该负责缓存变量以备不时之需——这样就不必在每次访问变量时都进行读/写操作。

该应用程序在 Tomcat6 环境中运行,我通过调用插件管理器(它保存从不同数据源获取的数据)来获取数据。

您是否知道我可以阅读的任何链接 - 或者可能知道一些现有的解决方案?

最佳答案

听起来您还没有完全掌握事务管理器和资源管理器之间的区别。 JBossTS 等事务管理器通过 RM 驱动程序提供的 XAResources 驱动 Oracle、MSSQL 等资源管理器。

您没有实现事务管理器 - 它已经实现。您正在实现一个新的资源管理器并使用现有的事务管理器来驱动它。阅读 XA 规范,然后实现 XAResource 并使用事务管理器征用您的资源。只要您的 impl 符合规范,事务管理器就会像处理数据库驱动程序或消息队列提供的实现一样使用它。

请注意,在 ACID 事务范围内对外部(即非事务)系统进行 I/O 操作基本上是不可能的。您所能期望的最好结果是某种形式的基于补偿的模型或具有上次资源提交优化的 1PC 行为。

关于java - 没有 JDBC 的 Atomikos 或 JBossTS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7838531/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com