Java 分散キャッシング ソリューションを探しています。次のような機能を希望します。
- 分散
- 自動検出
- 冗長性
- 非集中型
TerraCotta のようなフレームワークを分析しましたが、これはキャッシング フレームワークに必要なすべてのものであると思われます... ただし、単一障害点となる必要な中央キャッシング ノードがあるようです。 .
独自のソリューションを展開する以外のアイデアはありますか?
Java 分散キャッシング ソリューションを探しています。次のような機能を希望します。
TerraCotta のようなフレームワークを分析しましたが、これはキャッシング フレームワークに必要なすべてのものであると思われます... ただし、単一障害点となる必要な中央キャッシング ノードがあるようです。 .
独自のソリューションを展開する以外のアイデアはありますか?
ヘーゼルキャストを試してみてください。これは、Java 用のオープン ソース クラスタリングおよび高度にスケーラブルなデータ配布プラットフォームです。それはあなたのすべての要件を満たします。さらに、それは非常に使いやすいです。
JBossCacheまたはEhCache(分散キャッシュリスナーを使用)のいずれかをお勧めします。私は両方を使用しました、私は両方が好きです、そしてそれらは両方ともあなたの要件に合います。
Infinispanをお試しください。Infinispanキャッシュは、分散キャッシュとして使用でき、複製キャッシュとしても使用できます。単一障害点の可能性はありません。分散キャッシュモードでは、ヒープサイズよりも多くのスペースを提供できます。クラスター内に4つのノードがあり、それぞれが1GBのヒープサイズと複製キャッシュとしてのInfinispanの使用があるとすると、合計サイズのクラスターは1 Gbになりますが、Infinispanが分散キャッシュとして使用され、データ項目ごとに2つのコピーを設定すると、合計サイズは2Gbになります。 http://www.jboss.org/infinispan
Terracotta は最近 Ehcache を買収し、Ehcache API と Terracotta クラスター化ストアとの緊密な統合をシンプルなパッケージでリリースしました。Ehcache 構成の数行を追加するだけで、単一ノードからクラスター化に移行できますが、Terracotta サーバーも実行する必要があります。処理する。
Terracotta ES エディションの Ehcache はオープン ソースであり、無料で使用できます。サポート、より多くのスケーリング、補償、パッチ サポートなどが必要な場合は、商用ライセンスを利用できます。
Terracotta は単一の中央サーバーではなく中央サーバーアレイを使用するため、単一障害点はありません。必要な数のホット バックアップ サーバーをセットアップでき、これらのバックアップ サーバーは、アクティブ サーバーがダウンしたときに引き継ぐように構成できます。Terracotta FX(市販品)では複数の現用系サーバーも利用できます。
コヒーレンスを見たことがありますか?
とても便利です。ただし、オープンソースでも安価でもありません。
http://www.oracle.com/technology/products/coherence/index.html
パーティーに遅れましたが、オープン ソースのJava 分散キャッシュである TayzGrid を試しましたか。インメモリ データ グリッドまたはキー値ストアとも呼ばれます。
それはすべての基本的なニーズに答えます
- Distributed
- Auto-Discovery
- Redundancy
- Non-Centralized
また、スプリット ブレインや突然の再起動などの高度なフェールオーバー シナリオも管理します。すべてのノードはインテリジェントであるため、完全に分散されています。
また、使用するトポロジ (パーティションまたは複製) を選択することもできます。より高度なトポロジ (レプリカのパーティション) を使用する場合は、ライセンスを購入できます。
通常、すべての操作が 1 つのノードで実行されると単一障害点が発生し、そのノードがダウンすると、操作全体がダウンする可能性があります。この問題の解決策は、レプリカまたはパーティション レプリカのようなトポロジを使用することです。一度ノードがダウンすると、操作全体が他のノードに移行し、データが失われることはありません。
あなたが探している機能が単一の製品NCacheにある限り、Umer も言及しています。
Terracottaは分散キャッシュも提供しています。