我的Spring JMS Listener应用程序遇到问题,该应用程序侦听该主题。
[每当ActiveMQ发生主/从转换时,ActiveMQ Web控制台报告我的使用者ID将从“活动持久订阅者”变为“离线持久订阅者”。如果我重新启动消费者应用程序,它将在“活动的持久订阅者”下变为活动状态。我不确定Spring Listener配置有什么问题。
<bean id="amqConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL" value="failover:(tcp://xxx01:61616,tcp://xxx02:61626)?randomize=false&initialReconnectDelay=100&maxReconnectDelay=100&maxReconnectAttempts=30"/>
<property name="clientID" value="DevTest" />
</bean>
<bean id="connectionFactory" class="org.springframework.jms.connection.CachingConnectionFactory">
<constructor-arg ref="amqConnectionFactory" />
<property name="reconnectOnException" value="true" />
</bean>
<bean id="messageReceiver" class="com.example.jms.TestMessageListener">
</bean>
<bean class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="connectionFactory" ref="connectionFactory" />
<property name="destinationName" value="TESTTOPIC" />
<property name="messageListener" ref="messageReceiver" />
<property name="subscriptionDurable" value="true" />
<property name="pubSubDomain" value="true" />
</bean>
我在ActiveMQ Artemis上遇到了类似的问题,并帮助删除了连接参数。
为我工作:(tcp://xxx.xxx.xxx.xxx:61616,tcp:/xxx.xxx.xxx.xxx:61617)
让我们尝试:
failover:(tcp://xxx01:61616,tcp://xxx02:61626)