2011-03-01 74 views
0

我在做JMS clstering。我在HASingleton JMS集群故障转移方面取得了成功。但是有一件事情是需要共享同一个数据库来保持持久性的。我们不能拥有独立的数据库并通过jms或jgroups进行复制。JBOSS JMS集群数据库复制

欢迎任何建议。

+0

有两个不同的概念:数据库集群和应用程序集群。你要哪个?或两者? – nIKUNJ

+0

JMS在其数据库中存储交易详情/数据权限。我如何确保第二个节点也能接收到这一点。否则,由于第二节点JMS在其数据库中不具有相同的电阻数据,因此JMS集群效率低下。其实我正在实施一个故障转移战略,在这个如果第一个节点停机的情况下,it db的可能性也很低。在HASingleton JMS集群中,JMS集群可以负责将持久数据复制到第二个节点。我们不想为共享数据库使用共享数据库 – mrcool18t

回答

0

您可能正在使用JBoss AS 5.x或4.3,它使用JBoss Messaging作为JMS实现。对于JBoss Messaging,您将拥有一个数据库配置来存储您的消息。这是AFAIK,不能改变。 可以做的也是使用集群数据库(如MySQL Cluster或Oracle RAC),然后配置JBoss Messaging以使用它。这样,你在数据库端也有HA。

+0

JMS在其数据库中存储交易详情/数据权限。我如何确保第二个节点也能接收到这一点。否则,由于第二节点JMS在其数据库中不具有相同的电阻数据,因此JMS集群效率低下。其实我正在实施一个故障转移战略,在这个如果第一个节点停机的情况下,it db的可能性也很低。在HASingleton JMS集群中,JMS集群可以负责将持久数据复制到第二个节点。我们不想为相同的数据库使用共享数据库 – mrcool18t

+0

两个节点都使用相同的数据库。他们都坚持使用相同的表格,只是使用不同的“nodeId”。如果一个失败,另一个检测到这个并且处理分配给失败节点的消息。所以,数据已经被复制,但是在数据库层面。这是JBoss Messaging的工作原理,它是一个实现细节。 – jpkrohling

+0

我想每个都有1分贝,我该如何实现这个 – mrcool18t