Call us: +1-415-738-4000
Distributed Ehcache combines an in-process Ehcache with the Terracotta Server Array ("TSA") acting as a backing cache store.
With TSA the data is split between an Ehcache node (the L1 cache) and the TSA itself (the L2 Cache). As with the other replication mechanisms, the L1 can hold as much data as is comfortable. But there is always a complete copy of all cache data in the L2. The L1 therefore acts as a hot-set of recently used data. Distributed Ehcache is persistent and highly available, leaving the cache unaffected by the termination of an Ehcache node. When the node comes back up it reconnects to the TSA L2 and as it uses data fills its local L1.
From a network topology point of view Distributed Ehcache consists of:
Another way to look at the architecture of Distributed Ehcache is as a tiered memory hierarchy. Each in-process Ehcache instance (L1s) can have:
Off-heap memory (BigMemory). This is stored in direct byte buffers.
The Terractta servers (L2s) run as Java processes with their own memory hierarchy: