In particular, I do not want the object cache replicated accross Websphere Application Instances, I want a single cache shared accross instances.
So if I understand correctly you want all your application instances to have access to a central cache, but none of the application JVMs should take on responsibility for managing that data. If my understanding is correct you will be interested in a cache client/cache server style architecture , which is a very popular topology with our customers. This type of architecture can be achieved by using the Partitioned Cache. When using this caching topology you can configure on a JVM by JVM basis whether that specific JVM will participate in the management of the cached data. This is what we call local storage (-Dtangosol.coherence.distributed.localstorage=true|false). So your application JVMs would be local storage disabled and you would run stand alone JVMs (i.e. cache servers) that would be responsible for physically managing the cached data.
Also there is an extension to the Partitioned Cache call the Near Cache that automatically stores the MRU/MFU data in local memory.
Within WAS, the EAR is deployed within numerous application instances for horizontal scaling. Wouldn't Tangosol create a cache in each of these instances, possibly replicating between instances?Any input is appreciated.
First, think of a Coherence cache as a single clustered cache spanning all JVMs participating in that cluster (i.e. Coherence handles all the clustering transparently to your application). When a new JVM calls into the Coherence APIs that JVM will automatically join the Coherence cluster and join the caches you request through the APIs.
Second, while Coherence does support fully replicated caches, most of our customers use our Partitioned Cache. In a partitioned cache topology Coherence transparently/dynamically/automatically partitions the entire cached data set across all nodes participating (except those with local storage disabled of course). This means that as you add JVMs to the Coherence cluster you are actually adding cache capacity to the entire cluster.
Please email your dedicated resource within Tangosol or support at tangosol dot com if you have any further questions.
Rob MisekTangosol Coherence:
Unlimited Cache Capacity