ActiveMQ消息陷入网络代理设置

时间:2015-08-12 16:34:29

标签: activemq

我在网络设置中有两个ActiveMQ代理。客户端配置为randomize = true并且能够正常连接。但是,消息不会从一个代理转发到另一个代理并保留在队列中。例如,我有一个特定的队列,它有多个生产者和一个消费者。如果我查看一个消费者所连接的代理上的队列,则所有消息都会立即出列。但是,在其他代理消息上排队并且不会耗尽。

下面列出了我为两个经纪人设置的networkConnectors和transportConnectors。我尝试过添加duplex =" true"以及将networkTTL更改为1并且那些似乎没有任何区别。

BrokerA:

<networkConnectors>
    <networkConnector name="LocalBrokerToB"                    
                    networkTTL="2"
                    uri="static:(tcp://hostnameB:61617)"/>
</networkConnectors>

<transportConnectors>
    <transportConnector name="nioConnectorFront" uri="nio://hostnameA:61616?maximumConnections=1024 "/>
    <transportConnector name="nioConnectorBack" uri="tcp://hostnameA:61617?maximumConnections=1024 "/>
</transportConnectors>

BrokerB:

<networkConnectors>
    <networkConnector name="LocalBrokerToA"                    
                    networkTTL="2"
                    uri="static:(tcp://hostnameA:61617)"/>
</networkConnectors>

<transportConnectors>
    <transportConnector name="nioConnectorFront" uri="nio://hostnameB:61616?maximumConnections=1024 "/>
    <transportConnector name="nioConnectorBack" uri="tcp://hostnameB:61617?maximumConnections=1024 "/>
</transportConnectors>

关于可能出现什么问题的任何想法?某人工作的示例配置将是一个很大的帮助。

1 个答案:

答案 0 :(得分:0)

您应该将networkConnector连接到其他代理的传输连接器。这是您示例中的端口61616,而不是61617。

您应该在代理日志中或通过Web控制台/ JMX验证网络连接是否已实际建立。

添加duplex =&#34; true&#34;让其中一个经纪人启动连接,这在防火墙等情况下是很好的。在你的情况下,这应该不重要。