Java-Based Elastic Caching Solution Opens Scale-Out Bottleneck
"Elastic caching" is a hot buzz-phrase, with most of the attention coming from the cloud and virtualization. It has emerged as the solution dujour to the inherent limitations of the scale-out (horizontal) model favored in cloud apps, which increases the load on the database with each additional node.
"It gets to a point where the database becomes a bottleneck and can't handle the requirements of the application," explained Amit Pandey, CEO of Java clustering infrastructure provider Terracotta, "so the app gets really slow. And adding more nodes doesn't give you any more capacity. But with a cache in the app server itself, you don't have to go across the network for most of the hot data set. If you're not going back to the database during your transaction, your latency drops dramatically."
In the case of the latest release of Terracotta's Ehcache, Pandey claims that latency can drop from 100-150 milliseconds to about 5 milliseconds.
Ehcache 2.1 is Terracotta's fourth upgrade of the widely deployed open-source Java caching solution since the company acquired it last August. Ehcache (pronounced "ee-ache-cash") is the world's most popular open-source Java cache library. Enterprise production deployments of Ehcache are estimated to be in the hundreds of thousands. And it ships as a component in Hibernate ORM, the Spring Framework, Alfresco CMS and the Liferay portal.
San Francisco based Terracotta is the founding company of the open source Terracotta project. Terracotta clusters Java Virtual Machines (JVMs) to create a shared memory pool at the Java application tier, which can be used to share data among servers. This shared memory pool can also be employed to coordinate the work of many JVMs. The company's Java infrastructure solution is a commercial offering based on the open-source project.
The company's products provide a means of scaling enterprise Java applications to as many computers as needed without custom coding. Customers offload work from databases and applications to the Terracotta infrastructure, essentially mimicking Amazon EC2 inside private data centers.
The latest release of Ehcache comes with a new plug-in enterprise monitor designed to provide the real-time visibility into key performance metrics for the cache that developers need to optimize the performance of their apps. There's expanded support for IBM WebSphere in this release, which Pandey said will ensure that WebSphere users can take advantage of all the features of Ehcache. Terracotta Web Sessions clustering solution is also now available for IBM WebSphere. It already supports Weblogic, Tomcat, JBoss and Jetty. Ehcache 2.1 also comes with configurable SLA parameters, which aim to ensure high performance and five-nine's availability for mission critical apps.
The March 2.0 release of Ehcache added support for the Java Transaction API (JTA), which allowed users to employ a standard XA-compliant transaction manager for "all or nothing" transaction that must include all of a given set of operations. "This is a pattern that is very well understood and commonly used by people working within traditional JEE app servers and the Spring Framework," said Mike Allen, the company's produce manager at the time, "so we've added it as a first-class feature within Ehcache." Version 2.1 upgrades that JTA support to provide enhanced transactional support for Hibernate.
In a recent "The Forrester Wave" report, industry analysts at Forrester Research defined "elastic caching platforms" this way: "Elastic caching platforms (ECPs) are deployed on two or more nodes, usually in a cluster dedicated to caching. This adds a caching layer to your Web architecture that is dynamically scalable, performs well and is fault tolerant. Many ECP platforms also offer distributed code execution."
The researchers grouped a number of products under the category. The leaders included IBM, GigaSpaces, Oracle and Terracotta.
Terracotta claims that 50,000 users have moved to the latest version of Ehcache, and that more than 100 organizations have upgraded to the enterprise editions including Adobe, News Digital Media and Raytheon.
Ehcache 2.1 is available now for download at www.terracotta.org.