-
Sub-task
-
Resolution: Done
-
Major
-
None
-
None
-
Documentation (Ref Guide, User Guide, etc.)
Backport the jms thread pool configuration from jboss-head
Any JBoss thread pool can be used. By default it is configured to use the in jbossmq-service.xml
<!-- A Thread pool service -->
<mbean code="org.jboss.util.threadpool.BasicThreadPool"
name="jboss.mq:service=ThreadPool">
<attribute name="Name">JMSThread</attribute>
<attribute name="ThreadGroupName">JBossMQ Server Threads</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>
The thread pool is configured on the destination manager, e.g.
<!--
The destination manager is the core service within JBossMQ --> <mbean code="org.jboss.mq.server.jmx.DestinationManager" name="jboss.mq:service=DestinationManager"> <depends optional-attribute-name="MessageCache">jboss.mq:service=MessageCache</depends> <depends optional-attribute-name="PersistenceManager">jboss.mq:service=PersistenceManager</depends> <depends optional-attribute-name="StateManager">jboss.mq:service=StateManager</depends> |
<!-- HERE -->
<depends optional-attribute-name="ThreadPool">jboss.mq:service=ThreadPool</depends>
<depends>jboss:service=Naming</depends>
</mbean>