Forum OpenACS Q&A: Re: Aolserver 4.5 multithreading

Collapse
Posted by Jay Dubanik on
We have very strange behaviour of Aolserver 4.
We set MinThreads to 20 and MaxThreads to 60, after restart we should see 20 threads running? This worked in 3.13 but it seems it does not in 4.5. Whatever we put in MinThreads/MaxThreads under load it only goes to 15 threads, and then the server chokes.
And the nstelemetry.adp page tells us that we have MinThreads=10 MaxThreads=10 running=10.
Did anybody experienced this with 4.5?
Collapse
Posted by Claudio Pasolini on
There has been a lot of talk, mainly in the aolserver list, about the new, poorly documented way, of configuring Aolserver 4.5.
This is one significant post by tom Jackson: http://www.mail-archive.com/aolserver@listserv.aol.com/msg10976.html
Collapse
Posted by Brian Fenton on
Collapse
Posted by Malte Sussdorff on
In acs-tcl from HEAD there exists a pools-init.tcl file which will initialize the parameters as you would expect them to be initialized. Kudos for Tom to write it.
Collapse
Posted by Tom Jackson on
So did someone add this file based upon my post here? That is good for now, but it comes with a big IF, maybe several:

The current AOLserver4.5 has a single global namespace (not a Tcl namespace) for threadpool names. The built in threadpools are named default and error.

threadpools are shared among all virtual servers, usually this is not a problem with OpenACS because the usual installation only has one virtual server per nsd process.

The ns_pools Tcl command can be accessed from any virtual server, so if you have more than one, it could be a security risk. Chances are it will not be, but as a general rule, it eventually needs to be fixed.

I have written a fix which provides each virtual server with an independent namespace for threadpools and only allows access to change the current virtual server's threadpool settings. You can still see all threadpools, including the default and error threadpools.

This fix hasn't been committed to the AOLserver cvs, and this will remain the case until ns_limits is also addressed. Both of these have the same problem, and in fact, I have discovered that there are lots of parameters which we usually put in the config file that are no longer used. Bottom line is that ns_pools is the tip of the iceberg, the entire performance tuning system needs to be explained and documented.

The good news is that AOLserver performs so well with the default settings that most of us can ignore this, and the temporary fix should work okay. But I haven't reviewed it yet.