ActiveMQ学习笔记04 - 基于LevelDB的高可用

本文介绍了ActiveMQ 5.9版本中基于LevelDB的高可用特性,包括服务和数据的高可用性。通过Zookeeper集群管理Broker,实现故障转移,确保即使Master Broker宕机,客户端仍能无缝切换到Slave Broker。消息操作同步复制到所有集群节点,满足高可用条件后完成。配置关键在于所有节点的brokerName需一致。测试结果显示,虽然引入复制影响性能,但保障了系统的稳定性。
摘要由CSDN通过智能技术生成

ActiveMQ 5.9版本提供了基于LevelDB的高可用方式,包括数据的高可用和服务的高可用,一站式提供全套服务,很方便。

服务高可用的原理:使用zookeeper(集群)注册所有的ActiveMQ Broker。只有其中的一个Broker可以提供服务,被视为master,其他的Broker处于待机状态,被视为slave。当master由于死机等原因,不能提供服务,zookeeper会从slave中选举出一个Broker充当master。当原来的master Broker恢复继续提供服务的能力时,重新注册入zookeeper集群,作为slave待机。


这时ActiveMQ的客户端只能访问master的Broker,其他处于slave的Broker不能访问。所以客户端连接Broker应该使用failover协议。

failover:(tcp://broker1:61616,tcp://broker2:61616,tcp://broker3:61616)

这样即使当前的master Broker死机,zookeeper切换另一台机器为master,客户端也不需要重启和修改代码,完全透明。

下面是对zookeeper数据的抓图,可以看到activemq的有3个节点,分别是00000000033,00000000034,00000000032。这个图展现了00000000033的值,可以看到elected的值是null,表明这个节点是slave。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值