geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jules Gosnell <>
Subject Clustering: one or many Cluster connections ?....
Date Thu, 02 Feb 2006 11:30:17 GMT

Gianny Damour has got me thinking about how services relate to the cluster.

There are a couple of issues here:

a) how do we provide the cluster connection to multiple clustered 
services within the same node ?
b) do we want to address a node (assuming one Connection/Destination per 
node) or a service ?

(a) Either, every service contains its own private cluster Connection, 
in which case we would expect overhead to increase as we start more and 
more services within a node, Or, we come up with e.g. a multiplexed 
Cluster or Connection Factory, which can hand out what look like Cluster 
or Connection objects to these services which are then able to multiplex 
their conversations down a single Connection, in which case we would 
expect no increase in overhead but rather in contention as the number of 
services in a node increase. By remaining with the original 
Cluster/Connection API we could allow these two approaches to be 
deploy-time pluggable....

(b) if we go with the multiplexing idea, then I guess it would be cheap 
enough that every service might be able to think that it owns a private 
cluster connection, whilst it is actually sharing it with all other 
services within the node... - This allows us to dispatch messages at 
service rather than connection level and simplifies the decoupling of 
services since the same code will now run happily on a private or shared 

Of course, ActiveCluster may already support this sort of thing - I am 
just dumping thoughts into the ether.... James, have you anything to add 
? Can you e.g. run more than one ActiveSpace Space/Cache instance on the 
same node in the same Cluster, without making more than one Connection ? 
Or are Connections already doing this sort of stuff internally to the 
point that you would not want to ?



"Open Source is a self-assembling organism. You dangle a piece of
string into a super-saturated solution and a whole operating-system
crystallises out around it."

 * Jules Gosnell
 * Partner
 * Core Developers Network (Europe)
 * Open Source Training & Support.

View raw message