Ehcache is an open source, standards-based cache used in a wide array of applications to boost performance, offload the database and simplify scalability. Ehcache is robust, proven and full-features and this has made it the most widely used Java-based cache. Ehcache features memory and disk stores, replicate by copy and invalidate, listeners, cache loaders, cache extensions, cache exception handlers, a gzip caching servlet filter, RESTful & SOAP APIs, an implementation of JSR107.
Features of ehcache
Fast and Light Weight:
· Fast
· Simple
· Small foot print
· Minimal dependencies
Scalable:
· Provides Memory and Disk stores for scalabilty into gigabytes
· Scalable to hundreds of caches
· Tuned for high concurrent load on large multi-cpu servers
· Multiple CacheManagers per virtual machine
Flexible:
· Supports Object or Serializable caching
· Support cache-wide or Element-based expiry policies
· Provides LRU, LFU and FIFO cache eviction policies
· Provides Memory and Disk stores
· Distributed Caching
Standards Based:
· Full implementation of JSR107 JCACHE API
Extensible:
· Listeners may be plugged in
· Peer Discovery, Replicators and Listeners may be plugged in
· Cache Extensions may be plugged in
· Cache Loaders may be plugged in
· Cache Exception Handlers may be plugged in
Application Persistence:
· Persistent disk store which stores data between VM restarts
· Flush to disk on demand
Supports Listeners:
· CacheManager listeners
· Cache event listeners
· JMX Enabled
Distributed:
· Support for replication via RMI, JGroups, JMS or Terracotta
· Peer Discovery
· Reliable Delivery
· Synchronous Or Asynchronous Replication
· Copy Or Invalidate Replication
· Transparent Replication
· Extensible
· Bootstrapping from Peers