Ehcache is a fast and simple, thread safe, standards based pure Java, in-process cache, which acts as a pluggable cache for Hibernate 2.1.
It has a small memory footprint, minimal dependencies, and comprehensive documentation.
Ehcache is widely used in such open source projects as Hibernate and Spring. Terracotta also offers an enterprise edition.
Key Features
- Scalable:
- Provides Memory and Disk stores for scalability 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.
-
- Dynamic, Runtime Configuration of Caches.
- Standards Based with a 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.
- Listeners:
- CacheManager listeners.
-
- Cache event listeners.
- JMX Enabled.
- Distributed Caching.
- Support for replication via RMI or JGroups:
- Peer Discovery.
-
- Reliable Delivery.
-
- Synchronous Or Asynchronous Replication.
-
- Copy Or Invalidate Replication.
-
- Transparent Replication.
-
- Extensible.
-
- Bootstrapping from Peers.
- Cache Server:
- RESTful cache server.
-
- SOAP cache server.
- JCache style caching.
-
- Comes as a WAR or as a complete server.
- Java EE and Applied Caching:
- Blocking Cache to avoid duplicate processing for concurrent operations.
-
- SelfPopulating Cache for pull through caching of expensive operations.
-
- Java EE Gzipping Servlet Filter.
-
- Cacheable Commands.
-
- Works with Hibernate.
-
- Works with Google App Engine.
-
- Transactional support through JTA.
- High Quality:
- High Test Coverage.
-
- Automated Load, Limit and Performance System Tests.
-
- Specific Concurrency Testing.
-
- Production tested.
-
- Fully documented.
-
- Trusted by Popular Frameworks.
-
- Conservative Commit policy.
-
- Full public information on the history of every bug.
-
- Responsiveness to serious bugs.
Website: www.ehcache.org
Support: Documentation
Developer: Terracotta, Inc
License: Apache License 2.0
Ehcache is written in Java. Learn Java with our recommended free books and free tutorials.
Related Software
| Caching Systems | |
|---|---|
| Redis | Persistent key-value database with network interface |
| Memcached | High-performance distributed memory object caching system |
| Hazelcast | Distributed in-memory data store and computation platform |
| Apache Ignite | Distributed database, caching and processing platform |
| Ehcache | Standards based pure Java in-process cache |
| Java Caching System | Distributed caching system written in Java |
| Couchbase | Distributed key-value database management system |
| yrmcds | LRU cache library and key-value server |
| Cachelot | Memory object caching system with master/slave replication |
Read our verdict in the software roundup.
Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk. You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more. Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form. |

