奇忠诚 发表于 2017-2-27 10:50:43

备忘启动jetty后log中不断交替出现Connector vm://localhost Started/Stopped

启动jetty后log中不断交替出现Connector vm://localhost Started和Connector vm://localhost Stopped,这是activemq引发的问题。
问题的原因是在默认情况下,activemq只有当topic/queue有数据时候才会保持它在内存中的存在。所以当队列或者主题中没有数据时,activemq将不断进行启动和停止的操作。
要解决这一现象,必须在spring配置文件中的activemq的listenercontainer声明时,加上<property name="cacheLevelName" value="CACHE_CONNECTION"/>这句。
加上之后,重新启动,everything done。
如下所示:
<bean id="queueListenerContainer"
class="org.springframework.jms.listener.DefaultMessageListenerContainer">
<property name="cacheLevelName" value="CACHE_CONNECTION"/>
<property name="connectionFactory" ref="jmsConnectionFactory" />
<property name="destination" ref="QUEUE" />
<property name="messageListener" ref="queueListener" />
<property name="transactionManager" ref="jmsTransactionManager" />
<!-- 使用外部事务管理器时设置为true,默认false -->
<property name="sessionTransacted" value="true" />
<property name="concurrency" value="1-100" />


参考资料:
http://forum.springsource.org/showthread.php?86482-ActiveMQ-infinitive-loop-Connector-start-stop
页: [1]
查看完整版本: 备忘启动jetty后log中不断交替出现Connector vm://localhost Started/Stopped