Hi List,
I have some topics with very few messages (it can be days or weeks
before a message arrives) on it. The consumers to those topics
disconnect after some time and don't reconnect afterwards.
I have no idea where to put the blame (activemq-server,
activemq-consumer, spring?), but I'd like those consumers to just sit
and wait rather than decide to leave after a while (or get booted from
the server).
The disconnect-behaviour doesn't seem to be too consistent as I've
connected a test-consumer to a test-activemq where I'm pretty sure there
was no traffic on any of the topics last night and of the 8 topics only
3 have disconnected so far according to the webbased admin.
I'm using ActiveMQ 5.2 where the topic-consumption is handled via
Spring's default jms-handling:
<bean id="amqFact" class="org.apache.activemq.ActiveMQConnectionFactory">
<constructor-arg value="${jms.username}" />
<constructor-arg value="${jms.password}" />
<constructor-arg value="${jms.url}" />
</bean>
<jms:listener-container connection-factory="amqFact"
destination-type="topic">
<jms:listener destination="topicname" ref="someMessageListenerImpl" />
<!-- and seven more topics -->
</jms:listener-container>
The configured url is tcp://hostname:61616 with no added parameters.
ActiveMQ itself is mostly left to its defaults, although openWire is
configured like (i.e. with the added transport.closeAsync):
<transportConnector name="openwire"
uri="tcp://localhost:61616?transport.closeAsync=false"
discoveryUri="multicast://default"/>
Which flag/configuration on which side is responsible for this
behaviour? And how do I change it?
Best regards,
Arjen