簡體   English   中英

ActiveMQ:如何防止消息進入“分派隊列”

[英]ActiveMQ: How to prevent message from going to “Dispatched Queue”

我在Spring框架中使用ActiveMQ。

我在jms容器中設置了兩個使用者。 當我向隊列發送4條消息時,一些消息被傳輸到“分派隊列”,因為消費者需要花費很長時間來處理該消息。

我正在嘗試找到防止消息進入“分派隊列”的方法,也就是說,我希望任何准備使用該消息的使用者都可以使用它們。

我試圖將預取設置為0,但似乎根本不起作用。

 <bean id="prefetchPolicy" class="org.apache.activemq.ActiveMQPrefetchPolicy"> <property name="queuePrefetch" value="0"/> </bean> <bean id="connectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory"> <constructor-arg index="0" value="tcp://localhost:61616" /> <property name="prefetchPolicy" ref="prefetchPolicy"/> </bean> 

以下是我的jms容器的設置:

  <bean id="jmsContainer" class="org.springframework.jms.listener.DefaultMessageListenerContainer"> <property name="connectionFactory" ref="connectionFactory"/> <property name="destination" ref="defaultDestination" /> <property name="messageListener" ref="messageListener" /> <property name="concurrentConsumers" value="2" /> </bean> 

我發現了問題。 我在兩個不同的地方兩次聲明了相同的豆子。 加載的第二個Bean的預取未設置為0,因此無法正常工作。

我發布的上述設置有效!

謝謝!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM