background image

 Terrocotta - 基于 JVM 的 Java 应用集群解决方案

 前言

越来越多的企业关键应用都必须采用集群技术,实现负载均衡(Load Balancing)、容错(Fault Tolerance)和灾难恢复
(Failover)。以达到系统可用性(High Availability)和可伸缩性(Scalability)的要求。

关于 J2EE 集群技术的基本原理和常用实现方式,TheServerSide.com 有一篇经典的文章:
http://www.theserverside.com/tt/articles/article.tss?l=J2EEClustering

CSDN 上,陶建风先生在他的博客中也作了翻译:
http://blog.csdn.net/ESoftWind/archive/2006/10/19/1341089.aspx

这篇文章虽然发表于 2005 年,但它对集群技术的概念、原理和实现的基本描述至今依然适用。刚刚接触集群技术的朋友不
妨阅读一下这篇文章,以便掌握集群技术的基本知识。

我写这篇文章是想介绍一个新的 Java 集群技术,Terracotta。它采用了与众不同的手段,解决了传统集群技术面临的一些关
键问题。可以说为 Java 集群技术的实现吹来了一股新鲜的空气。

Terracotta(http://terracotta.org/)是一个开源的框架。他的创始人 Ari Zilka 原本是 Walmat.com 的首席架构师。他于 2003 年成
立 Terracotta 公司,并且将产品开源。该产品在 2006 年左右趋于成熟,在很多财富 500 强企业获得成功应用。2009 年
Terracotta 在该年度的 JavaOne 会议中获得 Duke 奖,并由 Java 创始人 James Gosling 先生亲自把该奖颁发给了 Ari Zilka 先生。

本文着重介绍 Terracotta 技术的基本原理,尤其是它与其它集群技术的根本区别之处。然后会用一个简单的例子说明
Terracotta 的基本使用方式。在以后的文章里,我会陆续详细介绍 Terrocotta 的不同应用场景和技巧。

基本原理