Reputation: 8705
Using Java Visual VM: I can see almost 100 Threads in WAIT state.
In JBoss Server.xml i have:
<!-- A HTTP/1.1 Connector on port 8080 -->
<Connector port="8080" address="${jboss.bind.address}"
maxThreads="250" strategy="ms" maxHttpHeaderSize="8192"
emptySessionPath="true"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true"/>
I have a ThreadPool in Jboss-Service.xml that looks like:
<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>
<attribute name="KeepAliveTime">60000</attribute>
<attribute name="MaximumPoolSize">10</attribute>
<attribute name="MaximumQueueSize">1000</attribute>
<attribute name="BlockingMode">run</attribute>
</mbean>
In Thread Dump most of threads are in following state:
"http-0.0.0.0-8180-97" - Thread t@7296
java.lang.Thread.State: WAITING
at java.lang.Object.wait(Native Method)
- waiting on <23791834> (a org.apache.tomcat.util.net.MasterSlaveWorkerThread)
at java.lang.Object.wait(Object.java:485)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.await(MasterSlaveWorkerThread.java:81)
at org.apache.tomcat.util.net.MasterSlaveWorkerThread.run(MasterSlaveWorkerThread.java:107)
at java.lang.Thread.run(Thread.java:619)
Java Visual VM also lists a very high number for Daemon Threads Live: 176 Daemon: 171
I am using JBoxx 4x
Upvotes: 0
Views: 2811
Reputation: 533880
When a worker thread is idle, it is usually waiting on an empty queue for some new work.
I suspect these threads are waiting for more work.
Upvotes: 3