java - How to configure concurrency to a single queue -
i configure number of consumers single queue in jms template. tried implement this: jmstemplate - define concurrency per queue? in activemqqueue stiil shows 1. messanging context:
<bean id="parentcontainer" abstract="true" class="org.springframework.jms.listener.defaultmessagelistenercontainer"> <property name="connectionfactory" ref="connectionfactory" /> </bean> <bean id="parentcontainer" abstract="true" class="org.springframework.jms.listener.defaultmessagelistenercontainer"> <property name="connectionfactory" ref="connectionfactory" /> </bean> <bean id="playerstatslistener" parent="parentcontainer"> <property name="destination" ref="playerstatsqueue" /> <property name="messagelistener" ref="playerstatsservice" /> <property name="concurrency" value="100" /> </bean> <!-- listeners --> <bean id="playerstatsservice" class="com.xxx.service.playerstatsservice" /> <!-- destinations --> <bean id="playerstatsqueue" class="org.apache.activemq.command.activemqqueue"> <constructor-arg value="playerstatsqueue" />
another related question: there difference between "listener" "messagelistener" property?
in general, can set concurrentconsumers
, maxconcurrentconsumers
on defaultmessagelistenercontainer. concurrency
setting gives convenient range.
but according docs
specify concurrency limits via "lower-upper" string, e.g. "5-10", or simple upper limit string, e.g. "10" (the lower limit 1 in case).
so if concurrency=100
, it's still equivalent 1-100
, explain why you're seeing 1 consumer.
Comments
Post a Comment