On 06/03/2025 06:29, Joash Jose wrote:
Dear Apache Tomcat Support Team,

I hope this message finds you well.

I am writing to inquire whether Apache Tomcat (tomacat version is 10.1.33 
running on Java 21)  exposes virtual thread metrics through JMX / MBeans. 
Specifically:

Virtual Thread Visibility:

Does Tomcat provide MBeans (e.g., under Catalina:type=Executor) to monitor 
virtual thread usage, such as active virtual thread counts, creation rate, or 
parking states?

No with a few caveats - see below).

If not, are there plans to add such metrics in future releases?

No.

Or any alternate ways with which we can monitor this from tomcat side.?

(connectionCount - keepAliveCount) should be a reasonable estimate of the virtual threads currently being used.

If the requests are synchronous (and there is little point using virtual threads with async requests) then the creation rate is derivable from the requestCount in the GlobalRequestProcessor.

There is no information on parking states.

Configuration Clarification:
We have configured Tomcat 10.1.33 with,
<Executor name="tomcatThreadPool" 
className="org.apache.catalina.core.StandardVirtualThreadExecutor"/>
<Connector port="8080" protocol="org.apache.coyote.http11.Http11Nio2Protocol" connectionTimeout="18000" socket.soTimeout="18000" 
redirectPort="8443" enableLookups="false" URIEncoding="UTF-8" compression="on" useVirtualThreads="true" 
server="ARandomServer"/>

The <Executor .../> element isn't being used. Why configure it?

While this works, the existing ThreadPool MBeans show currentThreadsBusy=-1 and 
maxThreads=200 (incorrect in case of virtual threads). Is this expected 
behavior?

Yes.

JVM vs. Tomcat Metrics:
We observe that the JVM’s java.lang.management.ThreadMXBean includes virtual 
threads, but this aggregates data across all applications on the JVM. Does 
Tomcat offer a way to isolate virtual thread metrics specific to Tomcat?

No, because the JVM doesn't provide a mechanism to have multiple pools/groups/anything of virtual threads.

Mark


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to