geronimo-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gianny Damour <>
Subject Re: [Discuss] What next?
Date Sun, 02 Sep 2007 12:56:13 GMT
On 31/08/2007, at 10:12 AM, David Jencks wrote:

> Clustering
> IIUC we have a lot of partial  clustering solutions.  For instance  
> there's WADI, native tomcat clustering, a terracotta integration,  
> and IIUC Jeff has been working on a clustering solution (my  
> apologies if I left any out).  I'd like to know where these efforts  
> are in terms of actual functionality and reliability and what they  
> can be extended to do.  We also need some kind of cluster admin tools.


As a response to this query, I have quickly created a couple of WIKI  
pages,, in order to  
capture some of the technical aspects of WADI.

WADI's core functionalities are:
* group communication API - Reliable: cluster membership update  
notifications; various message exchange patterns; and interception of  
exchanged messages. Tribes is the actual group communication  
libraries used under the cover of the WADI API. An in-vm  
implementation is also provided for testing purposes.
* HttpSession migration - Reliable: if a session is hosted by a node  
and an HttpRequest requesting this session is received by another  
node, the session is migrated to the node receiving the HttpRequest.
* HttpSession replication - Reliable: each session is replicated to a  
configurable number of peers so that the session can be recreated if  
the node hosting the session dies.
* Persistence of HttpSessions between node restarts - Reliable  
(Derby, MySQL, Postgres): sessions can be stored into a database  
between node restarts.
* Distributed service infrastructure - Reliable: any class can be  
registered as a distributed service, which can then be invoked and  
monitored by clients on other nodes. More accurately, clients can  
create dynamic proxies for a distributed service. Methods executed  
against dynamic proxies are wrapped within messages and sent through  
the group communication infrastructure. Methods can be made one-way;  
method return values can be aggregated; Timeouts can be configured;  
Targeted peers can be selected. Clients can also monitor distributed  
services: they can received notifications when a distributed service  
starts, stops or fails and retrieve the peers hosting the distributed  
* Singleton service infrastructure - Reliable: WADI can manage a  
singleton service.
* Administration console - Reliable (deployed to standalone Jetty and  
Geronimo 2.x): very basic admin console to browse cluster components.
* Partial replication of any objects - under progress: instead of  
replicating the full session state each time that a session is  
updated, only the updated fields are replicated. So far, delta  
replication is working as long as the session is not migrated.

Prior the cut of the branch 2.0, I was working on a  
ClusterAwareConfigurationManager which will coordinate deployment,  
e.g. distribute, and managements, e.g. start, across multiple nodes.  
I put it on hold as 2.0 was being cut. I think now is a good time to  
restart this implementation.


View raw message