To clarify - The pools.tcl file I wrote serves ONE purpose. To set the "default" pool's params to what is in the server config. This was ONLY done because folks expected the default pool to be set at start up using the config params... as it was in 4.0.10.

My opinion is that any OTHER pools should be created and managed by Tcl Modules and or Tcl Packages, not the server config.

M

On Aug 1, 2007, at 9:56 PM, Tom Jackson wrote:

Dossy,

Sounds like a great goal, but there are still other considerations:
1. Even if the server tunes itself,  it needs to start somewhere
2. Hard coding defaults already makes it difficult to figure out what the settings are because usually the programmers don't update the config 'data structure' when the default is triggered by a missing value. So getting the value now requires writing a specific accessor. Getting the settings is very important to diagnosing certain issues, like one I will discuss below related
to ns_pools.
3. When a server has tuned itself up, it might be helpful to remember these
settings during a restart, so storage is still a good idea.
4. Removing the ability to use fixed values, that is human tuning, seems like
a sure road to disaster.
5. If all settings are dynamic, then every time they are accessed you need a
mutex or maybe even a cond.

Problem with ns_pools:

Pools are named. Only the pool name is used to create a pointer to the pool. However, then the pool pointer is stored using Ns_UrlSpecificSet which can take into account the server. The result is that virtual servers using the same pool name overwrite the previous data. The new pools.tcl file iterates once per virtual server, but uses the same pool name, the last one loaded updates the previous pool settings. Probably several function should take into account the virtual server, or somehow explain this. Regardless, the
result is that one server can change settings for another server.

You are not able to query the maps associated with a pool. If the data is only set via the ns_pools command, this information is completely unavailble. It also cannot be deleted. The query function would be available if derived from
a config file setting.

tom jackson

On Wednesday 01 August 2007 17:31, Dossy Shiobara wrote:
On 2007.08.01, Michael Andrews <[EMAIL PROTECTED]> wrote:
I guess adding the ability to manage pools from the config does not
take anything away from the ability ALSO manage pools from a package/
module.  Gives folks a choice.

One of the ideas for AOLserver 5.0 is to eliminate most of the static
config-time parameters and make as much as possible tunable at runtime. The notion of having to bounce the entire process to make certain config changes can be disruptive, operationally--especially when you have large
libraries of pre-sourced Tcl scripts which makes server startup
expensive.

The natural segue with "most settings changeable at runtime" is a body
of intelligent code that self-tunes and dynamically heals the server
(ala Oracle's clusterware, etc.). I'd love to get AOLserver the point where you simply specify maximum and minimum boundaries (which default
to the hardware's limits) and the server tunes itself based on the
workload it's receiving.

-- Dossy


--
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.


--
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