消息队列-ActiveMQ集群搭建

本文详细介绍了ActiveMQ在主备集群模式下的配置与实现,包括基于共享存储的Master-Slave架构、JDBC Master-Slave方案,以及如何通过网络连接器实现负载均衡,确保消息系统的高可用性和性能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主备集群

Shared File System Master Slave

自动主备切换,提供broker节点高可用(activemq没有提供数据高可用,需要运维自己实现,消息副本官方文档:http://activemq.apache.org/replicated-message-store)

conf/activemq.xml

brokerName="amq1"
<transportConnector uri消息端口不要重复

mysql持久化:配置相同数据源
kahadb持久化集群:<kahaDB directory="${activemq.data}/kahadb"/> 各个节点要配置成同一地址

各自启动即可。
基于共享存储的Master-Slave;多个broker共用同一数据源,谁拿到锁谁就是master,其他处于待启动状态,如果master挂掉了,某个抢到文件锁的slave变成master
启动
在这里插入图片描述
宕机
在这里插入图片描述
broker重启
在这里插入图片描述
JDBC Master slave
基于JDBC的Master-Slave:使用同一个数据库,拿到LOCK表的写锁的broker成为master.
性能较低,不能使用高性能日志

负载均衡

在这里插入图片描述

//静态配置
//activemq broker下加,所有的集群broker都要加。注意各个broker互相之间的消息端口和控制台端口不能一致
<networkConnectors>
  <networkConnector duplex="true" name="amq-cluster" uri="static:failover://(nio://localhost:5671,nio://localhost:5672)"  />
</networkConnectors>
//可能有权限校验问题,暂时记录注释掉simpleAuthenticationPlugin
//动态配置
<networkConnector uri="multicast://239.0.0.5" duplex="false"/>
//消息传播方式加:discoveryUri="multicast://239.0.0.5
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值