AOLserver 4.5 introduced some configuration and resource management changes 
which are significantly different from previous versions. These differences 
have the following effects:

1. Old configuration settings which defined threadpools or set resource limits 
for connection threads are ignored in AOLserver 4.5. Only two unlimited 
threadpools (named default and error) shared by all virtual servers are 
configured. Resource limits are set to the default values.

2. threadpools and resource limits are process wide: threadpools and limits 
apply to all virtual servers. 

3. ns_pools and ns_limits are available in every virtual server and can adjust 
process wide settings. There is no isolation between virtual servers. 

4. If ns_pools or ns_liimits create new url based threadpools or resource 
limits, they apply to every virtual server. If a virtual server uses the same 
name for a threadpool, these replace the previous values. 

I have modified the core code to do the following:

1. The new default and error pools remain initialized as follows (same as 
before):
minthreads 0 
maxthreads 10
maxconns 0 
timeout 120

Although I'm not  sure why this is considered 'unlimited'.

2. ns_pools is used to configure server specific pools, the API has not 
changed. However, the server name is prepended to the pool name supplied:

'ns_pools set fast' in server named 'jnm' creates a pool named 'jnm-fast'.

This seems not good until you use ns_pools list:

ns_pools list jnm-*
jnm-default jnm-fast

or:

ns_pools list [ns_info server]-*
jnm-default jnm-fast

3. The ns_pools list still shows all the pools for the entire process:

ns_pools list
jnm-fast tutos-default default tutos-fast error

4. ns_pools register still takes the un-prepended pool name:

ns_pools register pool server method url-pattern

The 'server' is not used to find the pool, it could be removed so that the 
command would look like this:

ns_pools register pool method url-pattern

5. Connection threads now are named after the threadpool being used:

-conn:0- is now -default:0-, by default

-conn:0- is now -jnm-fast:0- for urls which match the registration.

The current behavior is to always use -conn:0-, -conn:1-, etc.

6. A new query API has been added:

ns_pools query server method url

Example:
% ns_pools query tutos GET /x-thumb.jpg
tutos-fast
% ns_pools query tutos POST /x-thumb.jpg
tutos-default
% ns_pools query tutos HEAD /x-thumb.jpg
default

7. pools.tcl has been modified so that it only handles server pools, since 
ns_pools  can't access the default or error pools. 

.............

Obviously none of these changes have been committed. There are a number of 
unanswered questions:

What makes the default pool configuration 'unlimited'? It seems limited to 10 
threads?

Maybe maxthreads should be at least '1'?

Should there be a config section for the default/error threadpools? Note that 
these threadpools have no way of limiting or controlling server pools, either 
the current setup or the proposed code, possibly something in ns/parameters 
for the default pool, copied to the error pool?

There are lots of old parameters no longer used, and lots of new ones. Some 
seem related to the ones for ns_pools and ns_limits. I'll post a list of all 
calls to ConfigGet in another email. Until these are figured out, I find it 
hard to know if all of this is covered and how it relates to previous 
versions of AOLserver. 

tom jackson
 


--
AOLserver - http://www.aolserver.com/

To Remove yourself from this list, simply send an email to <[EMAIL PROTECTED]> 
with the
body of "SIGNOFF AOLSERVER" in the email message. You can leave the Subject: 
field of your email blank.

Reply via email to