tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kief Morris <>
Subject Re: Tomcat 4.0 JDBC servlet clustering and sharing
Date Thu, 08 Nov 2001 09:39:35 GMT
Pickering, Matthew D typed the following on 10:55 AM 11/1/2001 -0600
>My question is this:  Is this functionality still considered experimental
>and is buggy, or is it simply lacking documentation?

I would call it semi-experimental, in that we haven't really had any
feedback from people using it "in anger".

>If no one is actively working on the session persistence and clustering
>side, I am willing to volunteer my services to document and development them
>to the same level as other features (such as the Realms support).  

It hasn't been actively worked on in a while, although both Bip and I (who
put in most of what's there) are both still around. It's something I'd like to
take some time to flesh out, but I haven't had the time (hell, it's taken me
a week to respond to this message). Your contributions would be more 
than welcome, especially since it sounds like you've got some experience 
in the area.

I don't think Clustering uses JDBC at the moment, it's just got a MultiCast 
based implementation. Some rearchitecting may be in order to allow different
schemes for sharing sessions - it should be possible to swap implementations
based on MultiCast, JDBC, JavaSpaces, or whatever, as can be done with
security realms and session persistence.

A few weeks ago there was discussion on a thread related to embedding 
Tomcat in Avalon, which indicated the Cluster architecture could use some 
reworking to bring it into line with the rest of Catalina.

I'd also recommend restructuring the Manager class hierarchy. Craig has
long suggested that PersistentManager subclass StandardManager, and
that DistributedManager in turn subclass PersistentManager. I had gone
for each of these being siblings of MiddleManager, but in retrospect it seems
like Craig's scheme makes more sense. The only thing is, I still think there
ought to be a lightweight Manager, with no persistence even for start/stop,
which might be more suitable for embedding Catalina in some situations.
But that should be easy enough for someone to implement if they need it.

Finally, I think it'd be a very good thing to come up with some additions
to tester to allow automated testing of both persistence and distributed
sessions. This wouldn't be as simple as adding more unit tests, since
different Manager configurations need to be tried: perhaps an optional
tester build and script target would handle this, swapping the configuration
file and restarting. Tests would include making sure persistence doesn't
work if disabled (e.g. just duplicate the current restart persistence test,
but expecting the session to not be available after restart).


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

View raw message