【问题标题】:HornetQ Clustering Specific Queue and TopicHornetQ 集群特定队列和主题
【发布时间】:2016-12-05 15:26:52
【问题描述】:

我在 JBoss AS 7.1 中以集群模式使用 HorentQ;但是我想看看我是否可以只聚集特定的主题和队列。我从this link了解到,通过配置地址是可以的。但是我找不到有效的地址。这是 domin.xml 的快照;集群不工作的地方

              <cluster-connections>
                    <cluster-connection name="my-cluster">
                        <address>mro</address>
                        <connector-ref>netty</connector-ref>
                        <discovery-group-ref discovery-group-name="dg-group1"/>
                    </cluster-connection>
                </cluster-connections>

这是队列和主题的定义方式。将地址更改为 jms 会使所有内容都聚集在一起并且可以正常工作,但这不是我想要的

                 <jms-queue name="MROQueue">
                        <entry name="mro/MROQueue"/>
                        <entry name="java:jboss/exported/mro/MROQueue"/>
                    </jms-queue>
                   <jms-topic name="MROTopic">
                        <entry name="mro/MROTopic"/>
                        <entry name="java:jboss/exported/mro/MROTopic"/>
                    </jms-topic>

【问题讨论】:

标签: jboss hornetq


【解决方案1】:

我在地址中尝试了各种通配符,但没有任何效果。所以最终得到了这个工作

 <cluster-connections>
                    <cluster-connection name="my-cluster">
                        <address>jms.queue.cluster</address>
                        <connector-ref>netty</connector-ref>
                        <discovery-group-ref discovery-group-name="dg-group1"/>
                    </cluster-connection>
                </cluster-connections>

和队列

<jms-queue name="cluster.MROQueue">
                        <entry name="cluster.MROQueue"/>
                        <entry name="java:jboss/exported/cluster.MROQueue"/>
                    </jms-queue>
  <jms-topic name="cluster.MROTopic">
                        <entry name="cluster.MROTopic"/>
                        <entry name="java:jboss/exported/cluster.MROTopic"/>
                    </jms-topic>

以上内容使我的队列和主题都被聚集在一起。为了测试,我改为

 <cluster-connections>
                    <cluster-connection name="my-cluster">
                        <address>jms.queue.cluster3</address>
                        <connector-ref>netty</connector-ref>
                        <discovery-group-ref discovery-group-name="dg-group1"/>
                    </cluster-connection>
                </cluster-connections>

并将队列更改为

 <jms-queue name="cluster2.MROQueue">
                        <entry name="cluster2.MROQueue"/>
                        <entry name="java:jboss/exported/cluster2.MROQueue"/>
                    </jms-queue>

它没有聚集;所以这似乎是至少在这个版本中特定集群的方式

【讨论】:

    【解决方案2】:

    来自官方文档:

    地址。每个集群连接仅适用于发送到以该值开头的地址的消息。 注意:这不使用通配符匹配。

    https://docs.jboss.org/hornetq/2.3.0.Final/docs/user-manual/html/clusters.html#clusters.cluster-connections

    文档中没有的是地址是如何形成的,它确实说明了

    所有 JMS 队列和主题订阅都绑定到 以“jms”开头。

    【讨论】:

      猜你喜欢
      • 2012-01-03
      • 1970-01-01
      • 2013-05-10
      • 1970-01-01
      • 1970-01-01
      • 2013-02-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多