Hi Suman, I'm afraid i have little experience with Spring and none at all with Camel, so I won't be much help on that side of things. If your throughput figures are that low ( < 1msg / hr per session) then having so many sessions wont be a performance bottleneck, although it is still a bit odd.
I can however tell you how to alter the configuration so the Java broker will let you have more than 256 Sessions per connection. For example, if you add the element <maximumChannelCount>1024</maximumChannelCount> inside the <broker> tag within the <install dir>\etc\config.xml file that would allow you 1024 Sessions per connection. Legal values are up to 2^16. Regards, Robbie On 9 February 2012 10:44, suman <[email protected]> wrote: > Thanks guys for your answers.I had a look at JCA/Jencks/JMSRA in the past but > QPID seems to suggest JCA is only available for c++ message brokers > https://svn.apache.org/repos/asf/qpid/trunk/qpid/java/jca/README.txt > > So i had to look at alternative options.It would be good if QPID also > provides something similar to activemq pool project > > Now coming to my usecase. > Iam connecting to an external QPID message broker using java JMS client of > QPID(Well i use apache camel amqp component which inturn uses spring > jmstemplate) > Iam connecting to this DIRECT exchange and listen for various message > types.And in our domain we have various events.Each event will have its own > unique eventid.So publisher publishes to the QPID exchange with this eventid > as routing key and than i bind to this DIRECT exchange using eventid as > routing key(Which in turn creates a queue and binds to it using eventid as > routing key).I use the concept of Dynamic Destinations where i setup and > teardown these destinations when event starts/completes. > Now this is the configuration iam using > > <bean id="amqp" class="org.apache.camel.component.amqp.AMQPComponent"> > <property name="connectionFactory" ref="cachingConnectionFactory"/> > <property name="cacheLevel" value="2"/> > </bean> > > > <bean id="cachingConnectionFactory" > > class="org.springframework.jms.connection.CachingConnectionFactory"> > <property name="targetConnectionFactory" > ref="amqConnectionFactory"/> > </bean> > > > <bean id="amqConnectionFactory" > class="org.apache.qpid.client.AMQConnectionFactory"> > <constructor-arg > > value="amqp://guest:guest@clientid/push?brokerlist='${broker.url}'"/> > </bean> > > So as you can see iam caching upto SESSION level.So by doing this way each > event is bound to single session which inturn is bound to one QUEUE(With > eventid as binding key). > In our system we will have more than 256 events happening at a single time > and each event will have timeframe of 1 to 6 hrs.When event > completes,sessions are closed and dynamic queues get deleted. > > So is there anything wrong in the way i have configured this solution?Many > thanks for any advise > > Regards > Suman > > > > -- > View this message in context: > http://qpid.2158936.n2.nabble.com/JMS-Client-usage-best-practices-tp7170254p7268873.html > Sent from the Apache Qpid users mailing list archive at Nabble.com. > > --------------------------------------------------------------------- > Apache Qpid - AMQP Messaging Implementation > Project: http://qpid.apache.org > Use/Interact: mailto:[email protected] > --------------------------------------------------------------------- Apache Qpid - AMQP Messaging Implementation Project: http://qpid.apache.org Use/Interact: mailto:[email protected]
