2011-10-28 34 views
1

我正在使用基於Jboss 4.2.3和jdk1.5.0_14的JMS。但是,MDB池配置爲最大大小爲20,最大值爲InProcessMessageCount僅爲15。如何在jboss中爲jms隊列增加'InProcessMessageCount'的值?

我做了很多reties來利用隊列中的消息消耗。 我在文件ejb3-interceptors-aop.xml的域'Message Driven Bean'中將maxSize的值修改爲20。另外,我已將文件standardjboss.xml中的<message-driven-bean>部分的值<MaximumSize>修改爲80,但結果是隊列上的併發處理爲15到16個。它似乎是在jboss中的硬編碼值

回答

0

嘗試增加池限制maxSize=15<domain name="Message Driven Bean">ejb3-interceptors-aop.xml

更新

線程解釋最大池大小和maxSession則params的連接:https://community.jboss.org/message/549083#549083

所以最大池大小可以在外部ejb3-interceptors-aop.xml所有多邊開發銀行增加。然後可以爲選定的MDB增加maxSession以實際增加吞吐量。

還有一種方式,從hardcored註釋外化maxSession: https://community.jboss.org/message/639955#639955

+0

我試圖maxSize'的'值更改爲超過15個,但終於有沒有變化我用註釋: '@PoolClass( value = org.jboss.ejb3.StrictMaxPool.class,maxSize = 40,timeout = 10000)和@MessageDriven(activationConfig = {@ActivationConfigProperty(propertyName =「destinationType」,propertyValue =「javax.jms.Queue」), \t \t @ActivationConfigProperty(propertyName =「maxSession」,propertyValue =「40」)},...)' 它工作正常只有我的代碼是JBoss本機''org.jboss.ejb3.StrictM axPool.class''這不是最好的做法 – user1017344