Olás,
Estou procurando saber qual o número máximo de threads de um MDB que o JBoss pode executar ao mesmo tempo (estou utilizando a versão 4.0.4). Em resumo, preciso saber quantas mensagens em paralelo uma mesma fila pode processar.
No jboss-service.xml encontrei a seguinte configuração
<!-- A Thread pool service -->
<mbean code="org.jboss.util.threadpool.BasicThreadPool"
name="jboss.system:service=ThreadPool">
<attribute name="Name">JBoss System Threads</attribute>
<attribute name="ThreadGroupName">System Threads</attribute>
<!-- How long a thread will live without any tasks in MS -->
<attribute name="KeepAliveTime">60000</attribute>
<!-- The max number of threads in the pool -->
<attribute name="MaximumPoolSize">10</attribute>
<!-- The max number of tasks before the queue is full -->
<attribute name="MaximumQueueSize">1000</attribute>
<!-- The behavior of the pool when a task is added and the queue is full.
abort - a RuntimeException is thrown
run - the calling thread executes the task
wait - the calling thread blocks until the queue has room
discard - the task is silently discarded without being run
discardOldest - check to see if a task is about to complete and enque
the new task if possible, else run the task in the calling thread
-->
<attribute name="BlockingMode">run</attribute>
</mbean>
onde o que parece relevante é
<!-- The max number of threads in the pool -->
<attribute name="MaximumPoolSize">10</attribute>
No entanto, não consegui encontrar nenhuma referência que especificasse o real significado desse MaximumPoolSize.
Minha pergunta: é esse MaximumPoolSize que limita o número de threads do MDB? Se sim, ele é um limite único para o JBoss todo ou é um limite por fila?
Grato,
Rodrigo