tomcat-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Thomas <>
Subject Re: Is the Tomcat JSR-356 WebSocketClient-AsyncIO threadpool configurable?
Date Wed, 06 Nov 2013 17:45:32 GMT
On 06/11/2013 17:07, Bob DeRemer wrote:
> As part of loading testing our JSR-356 websocket implementation
> (running in Tomcat 7.0.48), we've created a subset of Tomcat jars to
> use as our "client" jsr-356 jars.
> Q1: are there any plans to create a client jsr-356 jar - similar to
> the Tyrus RI?

No. It wouldn't be that hard but you could just use the current JARs.
The server classes don't add that much.

> Secondly, during this load testing, we have experienced occasional
> IO-related issues that we can't quite pin down, but they all seem to
> be client-side.  Usually, this occurs when we have 20K (or more)
> websocket connections in the test client.  NOTE:  we are only using
> 50 - 100 threads in an executor against the collection of open
> websockets, so it doesn't seem like a huge number of threads
> sending/receiving messages.
> If appears that Tyrus supports configuration of the client side
> threadpool, but we're currently running on Tomcat in the server, so
> we wanted to find out if the "receiving" threads
> (WebSocketClient-AsyncIO) is coming from the same NIO connector
> threadpool, or from somewhere else.
> Q2: is the underlying AsynchronousSocketChannel receiving threadpool
> configurable?
> -          when running as a standalone java se client app
> -          and, when running within Tomcat as a websocket server

It is a separate thread pool and is non-configurable. It is,
essentially, unlimited. AsynchronousSocketChannel has a default
AsynchronousChannelGroup (which provides the threads) and Tomcat uses a
custom one that mimics the default with the exception that it sets a
useful thread name.


To unsubscribe, e-mail:
For additional commands, e-mail:

View raw message