That looks like a new property in Spring 3... we should add that option to
camel-jms but for now you should be able to make your own custom
JmsConfiguration class (extending the Camel JmsConfiguration one) and
override configureMessageListenerContainer to set up your idleConsumerLimit
value. You can use a custom JmsConfiguration like this:

    <bean id="jmsConfig" class="com.foo.MyJmsConfiguration">
        <property name="connectionFactory" ref="jmsConnectionFactory"/>
        <property name="idleConsumerLimit" value="10"/>
        <property name="concurrentConsumers" value="2"/>
        <property name="maxConcurrentConsumers" value="20"/>
    </bean>

    <bean id="activemq"
class="org.apache.activemq.camel.component.ActiveMQComponent">
        <property name="configuration" ref="jmsConfig"/>
    </bean>

Cheers,
Jon

On Mon, Aug 1, 2011 at 2:22 PM, Tommy Chheng <[email protected]> wrote:

> Looking at
>
> http://bsnyderblog.blogspot.com/2010/05/tuning-jms-message-consumption-in.html
> ,
> it looks like the setting i need is idleConsumerLimit
>
> "idleConsumerLimit property specifies the limit on the number of idle
> consumers"
> I think this means that after the message volume decreases, the consumers
> will become idle and thus be limited to this parameter.
>
> Unfortunately, I get a Unknown parameters=[{idleConsumerLimit=10}] when i
> use it in the activemq connection for camel.
>
> I notice this is parameter is not listed in
> http://camel.apache.org/jms.html
>
> Is this the right parameter or is there a workaround?
>
>
> On Mon, Aug 1, 2011 at 8:56 AM, Claus Ibsen <[email protected]> wrote:
>
> > On Mon, Aug 1, 2011 at 5:12 PM, Tommy Chheng <[email protected]>
> > wrote:
> > > I'm using camel 2.7.2 and connecting to an ActiveMQ queue with
> > > concurrentConsumers=2&maxConcurrentConsumers=20
> > >
> > > Should the current # of concurrent consumers dynamically adjust due to
> > > message volume from activemq?
> > >
> > > At the start, when there are 0 messages, the # of consumers is 2.
> > > When I have a large volume, the # of consumers goes up to 20, but after
> > the
> > > volume goes back to 0, the current # of consumers still remain at 20.
> > >
> >
> > The threads should have a idel time, that after X period should cause
> > them to terminate.
> > Check the spring documentation as its the spring-jms message listener
> > container, that is used
> > when consuming messages.
> >
> >
> > > I'm checking the # of consumers using the activemq web console.
> > >
> > > Any ideas how to make the # of consumers go back to 2 when there's no
> > > volume?
> > >
> > > --
> > > @tommychheng
> > > http://tommy.chheng.com
> > >
> >
> >
> >
> > --
> > Claus Ibsen
> > -----------------
> > FuseSource
> > Email: [email protected]
> > Web: http://fusesource.com
> > Twitter: davsclaus, fusenews
> > Blog: http://davsclaus.blogspot.com/
> > Author of Camel in Action: http://www.manning.com/ibsen/
> >
>
>
>
> --
> @tommychheng
> http://tommy.chheng.com
>



-- 
Cheers,
Jon
---------------
FuseSource
Email: [email protected]
Web: fusesource.com
Twitter: jon_anstey
Blog: http://janstey.blogspot.com
Author of Camel in Action: http://manning.com/ibsen

Reply via email to