A First Look At Clustering With Terracotta's Sessions For Tomcat

clustering cluster Java

Terracotta's technology is based on a configuration-driven clustered JVM, not a system-level clustered JVM such as IBM's. Therefore, Terracotta's software installation takes only a few minutes to place JVMs in a cluster.

Developers can integrate Terracotta into production systems right out of the box because it operates as a plug-in to the JVM and does not interfere with its functions. Terracotta's JVM plug-in provides a method to target and cluster objects, including caching data I/Os.

When developers try to build a cluster manually, they typically end up using a load balancer with HTTP sessions for their Web applications. Because of all the complexities behind HTTP session sharing, analyzing application performance must also be done manually, which can take months.

Clustering sessions manually is extremely difficult because developers have to discover which objects require sharing to make applications highly available during transactions. Conversely, high availability degrades application performance, so developers have to manually figure out how to trade performance for availability.

id
unit-1659132512259
type
Sponsored post

Balancing the two requires a careful review of all objects that need persistence if a server goes down. But at the same time, developers must figure out what to eliminate from a shared session so that application instances do not degrade in performance due to too much crosstalking.

Terracotta's plug-in makes clustering so easy that developers can scale up any Java application in minutes. The plug-in eliminates scalability problems by using a self-regulating memory-managing method between JVMs. The plug-in communicates with the Terracotta server by pushing object deltas onto memory. Terracotta's Sessions server grabs the deltas and replicates them on clustered nodes.

When clustering with Terracotta, developers can use the server to observe byte-level changes in the heap and quickly push them to other JVMs. This architecture allows developers to build linear, scalable clusters as needed.

To manage the performance of every clustered app server, the company also is offering a free Terracotta Sessions for WebLogic Server that can monitor EJB (Enterprise JavaBeans) performance.

As with most development-type products, Terracotta offers a minimal channel program, broken down into three levels that are based on sales volume. Level 1 requires $250,0000 in yearly sales, Level 2 requires $1 million, and Level 3 requires at least $2.5 million. The company offers margins ranging from 30 percent to 50 percent, and partners can garner additional revenue from services and development. To be eligible for the channel program, partners must resell Java products, have the ability to support Java products and have sold at least $5 million in Java products in the past year.

There is a $2,500 yearly partner fee and yearly training to the tune of $4,000 per seat. With that in mind, most VARs will be using the product as an end-user development tool and not as a resalable boxed product.

As channel programs go, Terracotta is only looking for heavyweight players. However, Terracotta still offers more of a channel program than most ISVs.