0 Replies Latest reply on Jun 17, 2014 1:37 PM by raylite3

    EJB3 config: max inbound/outbound messages must equal thread pool count

    raylite3 Apprentice


      There are a couple of references (http://rhsummit.files.wordpress.com/2012/03/miller_accelerate_your_jboss.pdf, Jboss EAP 6.0.2 EJB 3 Configuration) that say to make the MAX_INBOUND_MESSAGES/MAX_OUTBOUND_MESSAGES equal to the thread pool count (200) in this case and I am trying to understand this configuration better. Is the thread pool used to service the "messages" on the channel? If so, what are the WORKER_READ_THREADS/WORKER_WRITE_THREADS for?


      What are the symptoms that would cause me to increase these values? If I examine a thread dump and see 200 threads called 'EJB remoting - NNN' and they are all busy, would I increase the thread pool count and the INBOUND?OUTBOUND values? And what would be a reason to increase the WORKER thread counts? Appreciate any pointers/tests, etc.


                <remote connector-ref="remoting-connector" thread-pool-name="remoting">


                          <option name="WORKER_READ_THREADS" value="8" type="xnio"/>

                          <option name="WORKER_WRITE_THREADS" value="8" type="xnio"/>

                          <option name="MAX_INBOUND_MESSAGES" value="200" type="remoting"/>

                          <option name="MAX_OUTBOUND_MESSAGES" value="200" type="remoting"/>




                      <thread-pool name="default">

                          <max-threads count="10"/>

                          <keepalive-time time="100" unit="milliseconds"/>


                      <thread-pool name="remoting">

                          <max-threads count="200"/>

                          <keepalive-time time="1000" unit="milliseconds"/>