ActiveMQ双机热备时的连接跳动问题解决

本文介绍了在ActiveMQ双机热备环境中,模块间MQ连接跳动的问题及其原因。问题源于模块配置中缺少`randomize=false`参数,导致连接策略随机化,影响模块间通信。解决方法是修正配置,确保不使用随机策略选择URI。

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

1. 现象

为了避免单点故障,系统整体采用主备方式来实现。ActiveMQ作为重要的消息总线,自然也需要采取双机热备的方式。但是在系统实际运行过程中,出现了一个奇怪的现象:模块A连接的MQ服务器在两台机器之间来回跳动,而模块B不会同步跳动。由于模块A、B之间通过MQ进行通信,当两个模块连接的MQ服务器不同时,模块A、B之间将无法正常通信。
在这里插入图片描述

2. 问题原因

经过对比两个模块连接MQ的配置和网上查找资料,发现导致以上现象的原因。
出现跳动的模块A连接MQ的配置:

topic.brokerURL=failover:(nio://172.16.56.5:61618,nio://172.16.56.6:61618)?jms.prefetchPolicy.all=6000&maxReconnectAttempts=-1&startupMaxReconnectAttempts=10

不会跳动的模块B连接MQ的配置:

mq.topic.brokerURL=failover:(nio://172.16.56.5:61618,nio://172.16.56.6:61618)?jms.prefetchPolicy.all=6000&randomize=false&maxReconnectAttempts=-1&startupMaxReconnectAttempts=10

对比以上配置信息,可发现模块A比模块B缺少了一个参数random

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值