Terracotta Cluster

From Wikipedia, the free encyclopedia

Terracotta
Image:Terracotta_Logo.png
Latest release 2.6.0
Written in Java
OS Cross-platform
Platform Java Virtual Machine
Genre Cluster
License Terracotta Public License
Website http://www.terracotta.org

Terracotta is an open source JVM-level clustering software for Java. It delivers clustering as a runtime infrastructure service, which simplifies the task of clustering a Java application immensely, by effectively clustering the JVM underneath the application, instead of clustering the application itself.

Terracotta's JVM-level clustering can turn single-node, multi-threaded applications into distributed, multi-node applications, often with no code changes. Terracotta uses standard bytecode manipulation techniques to plug into the Java Memory Model in order to maintain semantics of Java (Java Language Specification), such as pass-by-reference, thread coordination, and garbage collection across the cluster. Terracotta's JVM-level clustering is enabled through declarative configuration (XML), and provides fine-grained, field-level replication, which means that objects do not need to implement Java serialization.

Terracotta uses the idea of Terracotta Integration Modules, or TIMs, to plug into common OSS, like Apache Tomcat, EHCache and Hibernate.

Typical use cases include:

  • HTTP session clustering
  • Distributed caching
  • Hibernate caching
  • Virtual heap for large data sets
  • Distributed workload distribution
  • Inter-JVM coordination
  • POJO clustering

[edit] See also

[edit] External links