users@grizzly.java.net

Re: Grizzly tuning

From: Jeanfrancois Arcand <Jeanfrancois.Arcand_at_Sun.COM>
Date: Mon, 02 Mar 2009 11:13:26 -0500

Salut,

Mark Hig wrote:
> Hi,
>
> We are starting to tune our Grizzly application for live deployment. Will
> you tell me what is the relation ship between Controller.readThreadsCount
> and Controller. maxThreads and Controller.minThreads.

The Controller.readThread count means Grizzly will use a Round Robin
approach to dispatch OP_READ handling. Technically it means:

Controller Thread will accept() the connection
Controller Thread will dispatch the OP_READ/OP_WRITE to a
ControllerReader Thread
ControllerReader Thread dispatch to ExecutorServices/ThreadPool

The thread pool (configured calling the min/maxThreads) will be shared
amongs the ControllerReader's Thread (readThreadCount).

If you don't set that value, grizzly does

Controller Thread will accept() the connection
Controller Thread dispatch to ExecutorServices/ThreadPool

Under hight load setting readThreadCount significantly increase
performance. We usually recommend to set that value to the number of
core/processor the machine. Also take a look at (for configuring the VM)

http://weblogs.java.net/blog/jfarcand/archive/2007/01/configuring_gri.html

Hope that help.

--Jeanfrancois





>
>
> Thanks.