0

Terracotta は、JVM アプリケーションのスケーリングに使用されます。ウィキペディアの簡単な説明は次のとおりです。

Terracotta は、Java 用のオープン ソース JVM レベルのクラスタリング ソフトウェアです。アプリケーション自体をクラスタリングするのではなく、アプリケーションの下にある JVM をクラスタリングすることにより、Java アプリケーションのクラスタリングのタスクを簡素化するランタイム インフラストラクチャ サービスとしてクラスタリングを提供します。

Java SE アプリケーションをスケーリングする場合に、Terracotta を使用する必要がある理由がわかりました。

私の質問: すでにアプリケーションのクラスタリングをサポートしている WebSphere AS などの Java EE アプリケーション サーバーも使用している場合、Terracotta を使用する意味はありますか? 両方を組み合わせて使用​​する必要がある場合とその理由は?

4

2 に答える 2

4

確かに、Terracota を Java EE アプリケーション サーバーで使用すると、パフォーマンスが大幅に向上します。

The Terracotta Server can be thought of as a shared L2 for all machines to leverage. Access to the L2 costs more than access to the L1—in the case of Terracotta, this is due to the fact that the L2 is across a network connection from all JVMs—but the L2 is cheaper than other I/O such as database or messaging that would otherwise be invoked.

対照的に、Zing Platform (Azul-Systems) は、ヒープ サイズの制限を取り除くことでスケーリングし、各インスタンスを数百 GB のヒープ メモリと数十のコアにシームレスかつ弾力的にスケーリングできます。従来の JVM は 2 ~ 3 GB を超えて拡張できません。

アプリケーション サーバー クラスタリングはキャッシュを提供しません。クラスタリングは負荷分散とフェールオーバーに使用され、いくつかの管理タスクを簡素化します。クラスタリングは水平方向のスケーラビリティを向上させ、キャッシングは垂直方向のスケーラビリティを向上させます。両方を持つことはキラーの組み合わせです:)

于 2011-03-23T10:57:23.120 に答える
0

分散キャッシングは、Terracotta の最も有用なユースケースの 1 つですが、それだけではありません。Terracotta は、インフラストラクチャ レベルのサービスとして、Java ランタイムの (本当の意味での) クラスタリングを提供します。これは、ネットワーク上の異なる Java ヒープにデプロイされたアプリケーションが、同じ JVM で実行され、同じヒープにアクセスしているかのように感じられることを意味します。Terracotta は、J2SE を J2CE (Java 2 クラスター版) に変換するテクノロジーと考えることができます。

于 2011-03-23T09:31:17.200 に答える