问题标签 [xa]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 使用 Spring 和 Hibernate 跨多个数据库执行分布式事务的“最佳”方法是什么
我有一个应用程序 - 更像是一个实用程序 - 它位于角落并定期更新两个不同的数据库。
这是一个使用 Spring Application Context 构建的小型独立应用程序。上下文中配置了两个 Hibernate Session Factories,依次使用 Spring 中配置的 Commons DBCP 数据源。
目前没有事务管理,但我想补充一些。对一个数据库的更新取决于对另一个数据库的成功更新。
该应用程序不位于 Java EE 容器中 - 它由从 shell 脚本调用的静态启动器类引导。启动器类实例化应用程序上下文,然后调用其中一个 bean 上的方法。
围绕数据库更新进行事务处理的“最佳”方式是什么?
我将把“最佳”的定义留给您,但我认为它应该是“易于设置”、“易于配置”、“便宜”和“易于打包和重新分发”的一些功能。自然开源软件会很好。
jdbc - 如何在 XA 2PC 事务中加入 ODBC 连接?
我们的应用程序使用 ODBC 与数据库(DB2 和 Oracle,如果有区别的话)进行通信,并通过JNI将业务逻辑委托给 Java (因此它使用 Java和C)。
我想知道的是需要哪些工具/软件/库来允许业务逻辑(Java/JDBC)和应用程序框架(C/ODBC)参与两阶段提交协议。
我们在 Linux 上运行此项目,但通常也支持 Solaris 和 Windows,因此首选多平台解决方案。
c++ - C++ 中的 XA 分布式事务
有没有很好的 C++ 框架来实现 XA 分布式事务?
术语“好”是指可用、简单(并不意味着“容易”)、结构良好。
由于学习原因,目前我正在按照 X/Open XA 规范进行个人实现。
先感谢您。
transactions - 长期交易结构化方法
我正在寻找一种结构化的方法来处理长时间(数小时或更长时间)的交易。正如这里提到的,这些类型的交互通常由乐观锁定和手动合并策略来处理。
使用标准事务对此类问题采取更结构化的方法会非常方便。各种长时间运行的交互,例如用户注册、订单确认等,都具有类似事务的语义,并且发明自己脆弱的手动回滚和/或超时/清理策略既容易出错又乏味.
以 RDBMS 为例,我意识到这将是与保持所有事务开放相关的主要性能成本。作为替代方案,我可以想象拥有一个同时支持两种隔离级别/策略的数据库,一种用于短期运行,一种用于长期运行的对话。例如,长时间运行的对话可能对数据访问有更严格的限制,以方便他们花费更多时间(某些数据的只读语义、乐观锁定语义等)。
有没有可以做类似事情的解决方案?
jboss - jboss jms 和 xa 事务
我将 JMS 与 JBoss 5.1.0 GA-jdk6 一起使用
我可以为应用程序数据和 JMS 使用相同的数据库,还是应该使用两阶段 XA 协议在单独的数据库中配置它们?
postgresql - 在 CentOS 上使用 Postgres 8.4.3 准备交易
我在本地 postgres.config 中将“max_prepared_transactions”设置为 20,但事务失败并出现以下错误跟踪(但仅在 Linux 上)。由于在 Windows 中,相同的代码可以无缝运行,如果这不是权限问题,我会徘徊。解决方案是什么?谢谢彼得
jta - 在 Berkeley DB Java 版中为分布式事务 (XA) 设置事务隔离级别
我在 BDB JE 应用程序中使用分布式事务来协调多个 BDB JE 环境中的事务。我想将事务隔离级别设置为可序列化。为了开始分布式事务,我使用我生成的 Xid,并且必须确保它是全局唯一的,避开 BDB JE 的本地 Transaction 类。启动的事务分支是 ThreadLocal,因此在操作中将 null 传递到事务字段中。那么如何设置隔离级别呢?隔离级别是否已经默认为可序列化?我的 Google-fu 没有出现任何问题...
java - 延迟发送邮件直到事务提交
有没有人有一个很好的教程或一些关于如何实现自己的 XAResource 的建议?我需要 Spring 的 MailSender 是事务性的,这样邮件只会在事务提交后发送,而且似乎没有任何现有的事务性包装器。
database - 什么是“分布式交易”?
分布式事务的维基百科文章不是很有帮助。
您能否给出有关分布式事务是什么的更多详细信息的高级描述?
另外,您能否举例说明为什么应用程序或数据库应该执行更新两台或多台联网计算机上的数据的事务?
我了解经典的银行示例;我更关心 Dynamo、Bigtable、HBase 或 Cassandra 等 Web 规模数据库中的分布式事务。
jms - glassfish v3 asadmin 如何在连接工厂上指定 XA
这在 GFV2 中有效:
$AS_HOME/bin/asadmin \ --host $AS_ADMIN_HOST \ --user $AS_ADMIN_USER \ --port $AS_ADMIN_PORT \ create-jms-resource \ --restype javax.jms.QueueConnectionFactory \ --description XA\ Queue\ Connection\ Factory \ --property Name=myXAQueueConnectionFactory:SupportsXA=true \jms/myXAQueueConnectionFactory
但是 SupportsXA=true 不再有效。也许我在GFV3手册中找不到,也找不到通过我们的朋友谷歌:how to specify XA transactionality using asadmin to configure the factory?有人知道怎么做吗?