Jump to content

Terracotta Cluster: Difference between revisions

From Wikipedia, the free encyclopedia
Content deleted Content added
FauxFaux (talk | contribs)
mNo edit summary
Changed the licence link to point to public site
Line 13: Line 13:
| programming language = [[Java (programming language)|Java]]
| programming language = [[Java (programming language)|Java]]
| genre = [[Computer cluster|Cluster]]
| genre = [[Computer cluster|Cluster]]
| license = [http://www.terracotta.org/confluence/display/orgsite/Licensing Terracotta Public License]<br />based on [[Mozilla Public License|MPL]], with an additional requirement for attribution
| license = [http://www.terracotta.org/TPL Terracotta Public License]<br />based on [[Mozilla Public License|MPL]], with an additional requirement for attribution
| website = http://terracotta.org/
| website = http://terracotta.org/
}}
}}

Revision as of 10:54, 13 December 2010

Terracotta
Developer(s)Terracotta, Inc
Stable release
3.2.1
Written inJava
Operating systemCross-platform
PlatformJava Virtual Machine
TypeCluster
LicenseTerracotta Public License
based on MPL, with an additional requirement for attribution
Websitehttp://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, by clustering the JVM underneath the application, instead of clustering the application itself [1].

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 modules (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
  • Workload distribution
  • Inter-JVM coordination
  • POJO clustering

Development status

Employees of Terracotta, Inc. and independent volunteers develop and maintain Terracotta. Users have free access to the source code and to the binary form of Terracotta under the Terracotta Public License.

A development line for select features is prepared in proprietary, closed source code and maintained solely by employees of Terracotta, Inc.

Components

Terracotta Core
The core features of Terracotta, including bytecode manipulation libraries and the Terracotta server, are distributed in TAR and JAR formats. Some tools are packaged with the core package, but others are distributed as Terracotta Integration Modules.
Eclipse Plugin
A plug-in for the Eclipse software development platform is available to aid developers in configuration and testing of Terracotta. The Terracotta Eclipse plugin is available as a separate download.

References

Bibliography

  • Zilka, Ari (June 23, 2008). "The Definitive Guide to Terracotta: Cluster the JVM for Spring, Hibernate and POJO Scalability" (Document). Apress. p. 368. {{cite document}}: |first2= missing |last2= (help); Unknown parameter |isbn= ignored (help); Unknown parameter |url= ignored (help)