2
我使用的是以下定義的spring jms偵聽器。它通常工作正常,但我看到它不斷斷開連接,並基於recieveTimeout設置重新連接。在收聽jms主題時丟棄消息
<bean id="jmsContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<!-- mrgm connection to the jca adapter -->
<property name="connectionFactory" ref="mrgmConnectionFactory" />
<!-- name of the topic -->
<property name="destinationName" value="test.destinationname" />
<!-- class which will listen for messages (must implement javax.jms.MessageListener -->
<property name="messageListener" ref="TestListener" />
<property name="sessionTransacted" value="true" />
<property name="receiveTimeout" value="1000" />
<!--turning this on drops all messages -->
<!-- <property name="pubSubDomain" value="true" /> -->
</bean>
我已經做了一些測試,當有很多信息被髮布到主題,因爲如果在斷開連接之間的小週期的消息傳出會掉落一些並重新將明顯受到聽衆錯過。
如果我將recieveTimeout設置爲0,則此問題消失。我應該在收聽某個主題時將recieveTimeout設置爲0嗎?還是我以錯誤的方式討論整個過程?
感謝您的提示。它確實顯示你是正確的。我正在使用縮短的語法。但是我注意到服務確實每隔1秒重新連接一次。再次感謝您的幫助。 \t' \t \t \t jms:listener-container> –