AMQ负载平衡群集设置

时间:2014-08-03 18:18:17

标签: activemq cluster-computing load-balancing

我知道有很多关于AMQ集群的信息,但我不知道如何设置这个.. 我需要一个负载平衡集群,有两台机器,每台机器有两个实例,如192.168.0.1(instance1,instance2)192.168.0.2(instance3,instance4)。 我的openwire端口是0.0.0.0:61617 - 0.0.0.0:61620。 在互联网上找到了一些解决方案,如:

Instance1

<networkConnectors>
 <networkConnector name="instance1-instance3-instance4" uri="masterslave:(tcp://192.168.0.2:61619,tcp://192.168.0.2:61620)" />
</networkConnectors>
<persistenceAdapter>
 <kahaDB directory="${activemq.data}/kahadb1" />
</persistenceAdapter>

instance2:

<networkConnectors>
 <networkConnector name="instance2-instance3-instance4" uri="masterslave:(tcp://192.168.0.2:61619,tcp://192.168.0.2:61620)" />
</networkConnectors>
<persistenceAdapter>
 <kahaDB directory="${activemq.data}/kahadb1" />
</persistenceAdapter>

instance3:

<networkConnectors>
 <networkConnector name="instance3-instance1-instance2" uri="masterslave:(tcp://192.168.0.1:61617,tcp://192.168.0.1:61618)" />
</networkConnectors>
<persistenceAdapter>
 <kahaDB directory="${activemq.data}/kahadb2" />
</persistenceAdapter>

instance4:

<networkConnectors>
 <networkConnector name="instance4-instance1-instance2" uri="masterslave:(tcp://192.168.0.1:61617,tcp://192.168.0.1:61618)" />
 <networkConnector name="FAILOVER" 
        uri="static:(failover:(tcp://192.168.0.1:61617,tcp://192.168.0.2:61619,tcp://192.168.0.1:61618,tcp://192.168.0.2:61620))?randomize=false" 
        dynamicOnly="true" 
        networkTTL="4" 
        duplex="true"/>
</networkConnectors>
<persistenceAdapter>
 <kahaDB directory="${activemq.data}/kahadb2" />
</persistenceAdapter>

它可以工作,相互连接,当一个节点出现故障时,instance4会使用此故障转移字符串重新连接到另一个节点。但我不知道它是否工作正常或它不起作用,请告诉我吗? 也许有人制作LB群集并且可以提供xml文件?请。抱歉,如果我的英语不太好。我来自其他国家)

1 个答案:

答案 0 :(得分:0)

扩展的解决方案(从代理角度看负载平衡)ActiveMQ部署称为网络经纪人。网络由多个逻辑节点组成,您似乎正在设置它们。这些节点可以是主从类型,以覆盖机器故障等。

您可以查看ActiveMQ发行版中的示例配置。