WildFly JBossWeb Tomcat Connector Internal ThreadPool Statistics: Difference between revisions
Line 28: | Line 28: | ||
=JMX Metrics= | =JMX Metrics= | ||
====maxThreads==== | |||
The thread count upper limit. No more than 'maxThreads' Tomcat connector threads can be created, meaning that no more than 'maxThreads' requests can be handled in parallel. | |||
====currentThreadCount==== | ====currentThreadCount==== | ||
The number of connector threads in existence at a certain moment in time. Includes threads actively doing work (see '[[#currentThreadsBusy|currentThreadsBusy]]' below) and idle threads. It is the value of the 'curThreads' internal variable. | |||
====currentThreadsBusy==== | ====currentThreadsBusy==== | ||
The number of AJP threads doing work at a certain moment in time. It is calculated based on formula: | |||
<pre> | |||
curThreads - workers.size() | |||
</pre> |
Revision as of 19:01, 10 May 2017
Internal
Relevance
- EAP 6.4.10
Overview
Tomcat connector internal thread pool JMX statistics are not exposed by default. In order to expose them, the JBoss instance must start with "org.apache.tomcat.util.ENABLE_MODELER" system property set to "true". This can be done in the .conf file corresponding to the mode JBoss is run in (standalone.conf or in domain.conf):
JAVA_OPTS="${JAVA_OPTS} -Dorg.apache.tomcat.util.ENABLE_MODELER=true"
Alternatively, it can be specified in the <system-properties> section of the configuration file:
<system-properties> ... <property name="org.apache.tomcat.util.ENABLE_MODELER" value="true"/> ... </system-properties>
The system property will determine the Tomcat Http11Protocol or class AjpProtocol to expose the corresponding JIoEndpoit in JMX as "jboss.web:name=<protocol>-<bind-address>-<port>,type=ThreadPool". Example: "jboss.web:name=ajp-127.0.0.1-8009,type=ThreadPool".
JMX Metrics
maxThreads
The thread count upper limit. No more than 'maxThreads' Tomcat connector threads can be created, meaning that no more than 'maxThreads' requests can be handled in parallel.
currentThreadCount
The number of connector threads in existence at a certain moment in time. Includes threads actively doing work (see 'currentThreadsBusy' below) and idle threads. It is the value of the 'curThreads' internal variable.
currentThreadsBusy
The number of AJP threads doing work at a certain moment in time. It is calculated based on formula:
curThreads - workers.size()