【问题标题】:How to connect to a network of activemq brokers from a client application?如何从客户端应用程序连接到 activemq 代理网络?
【发布时间】:2011-01-26 03:28:38
【问题描述】:

我在 activemq 中设置了一个代理网络,我如何从我的客户端应用程序连接到该网络

我试过了

network:static:(tcp://master1.IP:61616,tcp://master2.IP:61617) 和

但我得到以下异常

javax.jms.JMSException: Uncategorized exception occured during JMS processing; nested exception is javax.jms.JMSException: Could not create Transport. Reason: java.io.IOException: Transport scheme NOT recognized: [network]; 

静态:(tcp://master1.IP:61616,tcp://master2.IP:61617)

我得到异常

javax.jms.JMSException: Uncategorized exception occured during JMS processing; nested exception is javax.jms.JMSException: Could not create Transport. Reason: java.io.IOException: Transport scheme NOT recognized: [static]; 

谢谢

【问题讨论】:

    标签: activemq


    【解决方案1】:

    对于在代理网络中的连接,我们可以使用组播如下: 在 ActiveMQ.xml 中:

    <transportConnectors>
    <transportConnector name="openwire"  uri="tcp://IP1:61616" discoveryUri="multicast://default?group=GROUPNAME"/>
    </transportConnectors>
    
    <networkConnectors>
    <networkConnector uri="multicast://default?group=GROUPNAME"/>
    </networkConnectors>
    

    在客户端 API 中:

    discovery:(multicast://default?group=GROUPNAME)
    

    【讨论】:

      【解决方案2】:

      “希望故障转移到代理实例静态列表的客户端应使用 failover:// 传输。” (来自:http://activemq.apache.org/static-transport-reference.html

      所以正确的语法应该是:

      故障转移:(tcp://master1.IP:61616,tcp://master2.IP:61617)

      【讨论】:

        猜你喜欢
        • 2020-02-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-06
        • 1970-01-01
        相关资源
        最近更新 更多