首页 > 解决方案 > 设置clientId时,多个主题的多个ActiveMQ侦听器无法在spring boot项目中连接

问题描述

我正在使用 spring-boot-starter-activemq。

当我尝试使用多个侦听器进行侦听时,每个侦听器都针对具有 clientId 的不同主题,然后只有一个侦听器能够随机连接到一个主题,剩余的不连接说已经与给定的 clientId 连接。

下面是属性集

==================================================== =======================

错误信息

无法刷新目标“TOPIC_1”的 JMS 连接 - 使用 FixedBackOff{interval=5000, currentAttempts=5, maxAttempts=unlimited} 重试。原因:代理:pdt-topics - 客户端:测试已从 tcp://localhost:61616* 连接

标签: javaspringspring-bootactivemqspring-boot-starter

解决方案


根据 JMS 规范,您不能将多个客户端连接到具有相同客户端 ID 的代理。如果您只订阅没有持久订阅的主题,那么您不需要客户端 ID,但如果您确实想要持久订阅,那么您的每个客户端都需要有一个唯一的 ID 才能正常工作。


推荐阅读