org.apache.geronimo.clustering
Class Data

java.lang.Object
  extended byorg.apache.geronimo.clustering.Data

public class Data
extends Object

An object capable of holding the state of multiple applications and tiers. This will be a Map of tiers (web, ejb, ...). Each tier may choose how to organise it's own Map. e.g. Web tier will use a Map of webapps. Each webapp being represented by a Map of HttpSessionID:HttpSession. Assuming that all IDs where GUIDs, it would be posible to collapse all webapps together (and maybe all tiers), thus avoiding dehashing overhead with each lookup coming over the Cluster. I've considered this and decided that the extra partitioning of the data that I am doing, will result in much less contention on the Map used (particularly upon e.g. session creation), furthermore, by retaining references into the above-described structure, and distributing e.g. deltas across e.g. webapp specific Channels, this dehashing overhead could be avoided.

By using a Map of tiers, we avoid closing the set of clusterable services, but incur a little more synchronisation overhead on lookups, consider...

Version:
$Revision: 1.5 $ $Date: 2004/03/10 09:58:21 $

Field Summary
protected static org.apache.commons.logging.Log _log
           
protected  Map _tiers
           
 
Constructor Summary
Data()
           
 
Method Summary
 Map getTiers()
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

_log

protected static org.apache.commons.logging.Log _log

_tiers

protected Map _tiers
Constructor Detail

Data

public Data()
Method Detail

getTiers

public Map getTiers()

toString

public String toString()


Copyright © 2003-2005 Apache Software Foundation. All Rights Reserved.