Friday Apr 29, 2011

Java EE 7 - what about caching?

JCache (JSR 107, Java Temporary Caching API) has been incomplete and dormant for a while. With JavaEE 7 picking up steam and addressing cloud scenarios such as PaaS, the co spec leads (EHCache's Greg Luck and Oracle's Cameron Purdy) have agreed to do get back to work and complete JCache to provide Java EE with a general purpose caching API. You can find an evolving draft version of the specification and get a good level of details about what's going on on this recent post by Greg.


Fast-forward 240 JSRs and we now have JSR 347: Data Grids for the Java Platform, submitted by JBoss and with a goal to "build upon and extend JSR-107 (JCACHE) API" to adress use-cases such as distributed caching (2nd level caching for JPA for instance) or transient session state (ActiveCache for GlassFish would be a good example of that) and provide standard means of distributing and replicating data. More background on Manik's blog.

Voting by the JCP Executive Committee on JSR 347 is now going on with results due on May 9th. The proposed schedule for this JSR targets an Early Draft of the specification by December 2011 and a Final Release by September 2012 (in time for Java EE 7).

Thursday Dec 07, 2006

ehCache Distributed Caching Upgraded for GlassFish and Tomcat

ehCache Downloads

Greg reports the release of ehCache 1.2.4, now including support for Caching and GZip filters on GlassFish and Tomcat. ehCache is a java distributed cache for general purpose caching, J2EE and light-weight containers. The most recent release includes support for large ehcache deployments; Greg reports an instance of a multi-subnet cluster of 20 nodes.

Greg also reports that ehCache is considering being a full implementation of JCache - JSR 107, which I think would be a very good idea. More details at Greg's blog

Sunday Sep 10, 2006

Understanding the Caching of TopLink Essentials (Project GlassFish)

Picture of TopLink Cache Architecture

The implementation of Java Persistence API at Project GlassfiFish is TopLink Essentials. Caching is a key feature in any practical implementation of Java Persistence and Wonseok (from TmaxSoft) has just posted a detailed desciption of How Caching works in TopLink Essentials.

TopLink Essentials is used in a number of commertial distributions of GlassFish including Sun (SJS AppServer 9.0 and NetBeans), TmaxSoft (JEUS 6), and Oracle, the original contributor of the technology (see Doug's recent entry on the Previews of OC4J and JDeveloper).