ReplCache is based on
PartitionedHashMap,
which distributes keys and values across nodes, but adds variable
replication.
This means that, for each element (key/value pair) to be added, a user can
indicate how many times (replication count) the element should be
stored in the cloud.
For instance, a replication count of 1 means the element should be
stored in the cloud only once, on a node determined by the consistent
hashcode of the key.
A replication count of -1 means the element should be stored
everywhere, that is, on every node in the cloud. This means that the
element is highly available, but the disadvantage is that we also
waste memory.
A replication count of K (where K < number of cluster nodes) means
that an element will be stored K times. Unless K cluster nodes crash
at exactly the same time, the element will always be available.
The article can be found at
here (HTML)
and here (PDF).
The code can be downloaded
here.
There is a 5 minute flash demo of ReplCache at demos.html.