我知道有很多关于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文件?请。抱歉,如果我的英语不太好。我来自其他国家)
答案 0 :(得分:0)
扩展的解决方案(从代理角度看负载平衡)ActiveMQ部署称为网络经纪人。网络由多个逻辑节点组成,您似乎正在设置它们。这些节点可以是主从类型,以覆盖机器故障等。
您可以查看ActiveMQ发行版中的示例配置。