-
1. Re: Configure MDB PoolSize
jaikiran Dec 14, 2009 6:32 AM (in response to ejb3workshop)This is more of a EJB3 question and would be better in the EJB3 user forum. Which version of JBoss AS do you use?
-
2. Re: Configure MDB PoolSize
ejb3workshop Dec 14, 2009 6:33 AM (in response to jaikiran)I will raise it on that forum as well. I am using 4.2.3 with JBM 1.4.2-SP1
Thanks
Alex
-
3. Re: Configure MDB PoolSize
jaikiran Dec 14, 2009 6:36 AM (in response to ejb3workshop)ejb3workshop wrote:
I will raise it on that forum as well.
Don't worry, some moderator will move this thread there.
I am using 4.2.3 with JBM 1.4.2-SP1
Thanks
Alex
You can change the value in JBOSS_HOME/server/< servername>/deploy/ejb3-interceptors-aop.xml:
<domain name="Message Driven Bean"> <bind pointcut="execution(public * @javax.annotation.security.RunAs->*(..))"> <interceptor-ref name="org.jboss.ejb3.security.RunAsSecurityInterceptorFactory"/> </bind> <bind pointcut="execution(public * *->*(..))"> <interceptor-ref name="org.jboss.ejb3.stateless.StatelessInstanceInterceptor"/> <interceptor-ref name="org.jboss.ejb3.tx.TxInterceptorFactory"/> <interceptor-ref name="org.jboss.ejb3.AllowedOperationsInterceptor"/> <interceptor-ref name="org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor"/> <interceptor-ref name="org.jboss.ejb3.interceptor.EJB3InterceptorsFactory"/> </bind> <annotation expr="!class(@org.jboss.annotation.ejb.PoolClass)"> @org.jboss.annotation.ejb.PoolClass (value=org.jboss.ejb3.StrictMaxPool.class, maxSize=15, timeout=10000) </annotation> </domain>
Change the maxSize value (default=15) to a value of your choice
-
4. Re: Configure MDB PoolSize
ejb3workshop Dec 14, 2009 6:47 AM (in response to jaikiran)Thanks, just what I was looking for. -
5. Re: Configure MDB PoolSize
harishpandya Sep 8, 2011 3:49 AM (in response to jaikiran)Hi jaikiran,
i want to use concurrency using JMS so i used topic implementation of JMS.
My standardjboss.xml is
<proxy-factory-config>
<JMSProviderAdapterJNDI>DefaultJMSProvider</JMSProviderAdapterJNDI>
<ServerSessionPoolFactoryJNDI>StdJMSPool</ServerSessionPoolFactoryJNDI>
<CreateJBossMQDestination>true</CreateJBossMQDestination>
<!-- WARN: Don't set this to zero until a bug in the pooled executor is fixed -->
<MinimumSize>2</MinimumSize>
<MaximumSize>2</MaximumSize><!--how many parellel need for FPM -->
<KeepAliveMillis>150000</KeepAliveMillis>
<MaxMessages>15</MaxMessages>
<MDBConfig>
<ReconnectIntervalSec>10</ReconnectIntervalSec>
<DLQConfig>
<DestinationQueue>queue/DLQ</DestinationQueue>
<MaxTimesRedelivered>10</MaxTimesRedelivered>
<TimeToLive>0</TimeToLive>
</DLQConfig>
</MDBConfig>
</proxy-factory-config>Concurrency is achieved. But the problem is that concurrency is applied to a fixed no of messages after that remaining messages are taken sequentially.
Ex.
No. of messages on topic(range) Connecurrency performed for message Sequential
11-15 4 (2 parellel) 7-11
21-24 10(5 parellel) 11-15
25-29 18(9 parellel) 7-11
35-40 34(17 perellel- best perf.) 1-6
do you know why such pattern is followed & can we restrict it.
Thanks in Advance.