<html><head> <meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"> </head><body> <pre> README Notes The project home page is http://ehcache.org. Please see http://ehcache.org for a full change log, usage, product versions and comprehensive documentation. Introduction ============ Ehcache is a pure Java, in-process cache with the following features: 1. Fast and Light Weight 1.1 Fast 1.2 Simple 1.3 Small foot print 1.4 Minimal dependencies 2. Scalable 2.1 Provides Memory and Disk stores for scalabilty into gigabytes 2.4 Scalable to hundreds of caches 2.3 Tuned for high concurrent load on large multi-cpu servers 2.4 Multiple CacheManagers per virtual machine 3. Flexible 3.1 Supports Object or Serializable caching 3.2 Support cache-wide or Element-based expiry policies 3.3 Provides LRU, LFU and FIFO cache eviction policies 3.4 Provides Memory and Disk stores 3.5 Distributed 3.6 Dynamic, Runtime Configuration of Caches 4. Standards Based 4.1 Full implementation of JSR107 JCACHE API 5. Extensible 5.1 Listeners may be plugged in 5.2 Peer Discovery, Replicators and Listeners may be plugged in 5.3 Cache Extensions may be plugged in 5.4 Cache Loaders may be plugged in 5.5 Cache Exception Handlers may be plugged in 6. Application Persistence 6.1 Persistent disk store which stores data between VM restarts 6.2 Flush to disk on demand 7. Listeners 7.1 CacheManager listeners 7.2 Cache event listeners 8. JMX Enabled 9. Distributed Caching 10. Support for replication via RMI or JGroups 10.1 Peer Discovery 10.2 Reliable Delivery 10.3 Synchronous Or Asynchronous Replication 10.4 Copy Or Invalidate Replication 10.5 Transparent Replication 10.6 Extensible 10.7 Bootstrapping from Peers 11. Cache Server 11.1 RESTful cache server 11.2 SOAP cache server 11.3 comes as a WAR or as a complete server 12. Java EE and Applied Caching 12.1 Blocking Cache to avoid duplicate processing for concurrent operations 12.2 SelfPopulating Cache for pull through caching of expensive operations 12.3 Java EE Gzipping Servlet Filter 12.4 Cacheable Commands 12.5 Works with Hibernate 12.6 Works with Google App Engine 12.7 Transactional support through JTA 13. High Quality 13.1 High Test Coverage 13.2 Automated Load, Limit and Performance System Tests 13.3 Specific Concurrency Testing 13.4 Production tested 13.5 Fully documented 13.6 Trusted by Popular Frameworks 13.7 Conservative Commit policy 13.8 Full public information on the history of every bug 13.9 Responsiveness to serious bugs 14. Open Source Licensing 14.1 Apache 2.0 license Java Requirements ================= Ehcache 1.7.2 and above supports Java 1.5 and 1.6 at runtime. Ehcache final releases are compiled with -target 1.5. The Ehcache 1.5 branch is being maintained for Java 1.4 users. Dependencies ============ SLF4J API and one concrete logging implementation. The API jar and the JDK14 logging jar are included in the distribution. Maven Based Development ======================= Most Ehcache modules are placed in the central Maven repository. The Maven snippet for ehcache is: <dependency> <groupid>net.sf.ehcache</groupid> <artifactid>ehcache</artifactid> <version>[current-version]</version> <type>pom</type> </dependency> To deploy to a Terracotta server you also need to add the following: <dependency> <groupId>org.terracotta</groupId> <artifactId>terracotta-toolkit-1.2-runtime</artifactId> <version>3.1.0</version> </dependency> <repositories> <repository> <id>terracotta-repository</id> <url>http://www.terracotta.org/download/reflector/releases</url> <releases> <enabled>true</enabled> </releases> </repository> </repositories> Then create an ehcache.xml configuration from the one supplied in the distribution and place it in the root of your classpath. Non-Maven Based Development =========================== Place the ehcache-core.jar, slf4j-api.jar and slf4j-jdk14.jar, or the concrete SLF4J logging implementation library of your choice into your classpath. For use with Terracotta, copy the ehcache-terracotta.jar to your classpath. Then create an ehcache.xml configuration from the one supplied in the distribution and place it in the root of your classpath. Running the Terracotta Server at Development Time/Integration Testing ===================================================================== The Terracotta server is in the terracotta directory. It includes start and stop scripts. For Maven based development, there is a tc-maven-plugin which works much like the Jetty plugin. See USING-WITH-MAVEN.txt, which shows how to add the server to your integration test phase and interactive command use. For Ant based development, the tc-maven-plugin can be called from Ant. See USING-WITH-ANT.txt, which shows how to add the server to your Ant build, and how to use the server interactively from Ant. Samples ======= See the samples directory for ready-to-run samples which show to use the full features of Ehcache, including use with Terracotta. Documentation ============= See http://ehcache.org/documentation for full documentation. The JavaDoc is in the distribution and also online at <a href="http://ehcache.org/apidocs">http://ehcache.org/apidocs</a> Licenses ======== This kit contains ehcache code which is governed by the Apache License, version 2.0. The license is in the licenses folder. It also contains the Terracotta server which is governed by the Terracotta Public License, version 1.0. Ehcache 1.7.1 and higher uses SLF4J for logging. The SLF4J license is included in the licenses folder. Known Issues ============ 1. There are a number of known issues and workarounds for Tomcat. See the Using Ehcache with Tomcat chapter in the online documentation. 2. See the FAQ online for a current list. </pre> </body></html>