此篇文章是基于前面几篇文章

  1. 原理图

zookeeper+activemq的高可用  基于伪集群_高可用

2.每个消息队列都是一个伪集群

 2.1伪集群的配置 #参考上一篇文章

 2.2伪集群直接的网桥的配置

   集群1链接到集群2

集群1的Ip:

192.168.56.18  192.168.56.19  192.168.56.20

<networkConnectors>
  <networkConnector uri="static:(tcp://192.168.56.15:53531,tcp://192.168.56.16:53532,tcp://192.168.56.17:53533)"
 duplex="false" />
</networkConnectors>

集群2链接到集群1

集群2的Ip:

192.168.56.15  192.168.56.16  192.168.56.17

<networkConnectors>
  <networkConnector uri="static:(tcp://192.168.56.15:51511,tcp://192.168.56.16:51512,tcp://192.168.56.17:51513)"
 duplex="false" />
</networkConnectors>

保存以后从新启动两套集群的消息队列(activemq)

3.生产者A和消费者A链接消息队列的字符串(java中)

failover:(tcp://192.168.56.15:51511,tcp://192.168.56.16:51512.tcp://192.168.56.17:51513)?random=false
mq.username=admin
my.password=admin
mq.pool.maxConnection=10
queueName=xiaoxiaosanlang  #队列的名称要一致

4.生产者B和消费者B链接消息队列的字符串(java中)

failover:(tcp://192.168.56.18:51511,tcp://192.168.56.19:51512.tcp://192.168.56.20:51513)?random=false
mq.username=admin
my.password=admin
mq.pool.maxConnection=10
queueName=xiaoxiaosanlang  #队列的名称要一致



效果

  1. 生产B不生产消费者B依然会消费A生产的

    zookeeper+activemq的高可用  基于伪集群_activemq_02

2.

  zookeeper+activemq的高可用  基于伪集群_高可用_03