ActiveMQ(五)_伪集群和主从高可用使用

 
 
 
 

    2、配置levelDB,加载<broker>节点内

           bind:集群间通讯的ip和端口

           zkAddress:ZooKeeper地址,多个可用,逗号分隔

           hostname:主机名,可在/etc/hosts中进行配置

           zkPath:zkPath目录,可在ZooInspetor中进行查看

4、启动activemq

      /usr/local/src/activemq1/bin/activemq start

      可通过/usr/local/src/activemq1/data/activemq.log查看启动日志

 

5、关于管控台

       虽然3个activemq都启动了,但是同一时间只有Master对应的管控台可用,Slaver对应的管控台不可用

 

四、结合ZooInspector测试

1、打开ZooInspector(可自行搜索下载或从群中下载),输入ZooKeeper地址进行监控,如果3个activemq都启动成功,则显示如下:

2、Java测试代码

       代码可参考:http://www.cnblogs.com/gossip/p/5970090.html

       a) 配置集群IP(这里3个activemq的端口分别是51511,51512,51513)

        b)  测试代码

3、启动Java程序并发送消息

 

4、关闭Master队列(注意此时的Master队列为mq2)

a)   此时的ZooInspetor

 

5、重启mq2队列(重启后mq2加入队列成为Slaver,但是mq1还是Master,队列不受影响)

 

6、关闭mq1、mq2,仅剩mq3(由于只有一个队列,无法进行选举,所以整个队列都无法提供服务)


 

7、重启mq1(重启mq1后,mq1和mq3选举了Master队列,从而重新对外提供服务)

a) ZooInspecto显示mq1被选举为Master

b) 程序重新向队列消息,数据并没有中断 

 

五、总结

        本文演示了activemq伪集群的搭建过程及高可用的测试过程,通过举一反三可以将activemq部署到不同的机器上,从而实现相同的功能。

        遗留问题:ZooInspetor的activemq编号是自动生成的,很难发现其对应的队列,请问有没有可以自定义编号的方法,谢谢。

 

六、参考资料

1、http://www.cnblogs.com/gossip/p/5970090.html

2、http://activemq.apache.org/replicated-leveldb-store.html


转载地址:http://www.cnblogs.com/gossip/p/5977489.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值