3

実際には質問ではありませんが、次の1つ以上を使用した経験のある人からのコメント/提案を探しています。

  • RMIを使用したEhCache
  • JGroupsを使用したEhCache
  • テラコッタを使用したEhCache
  • ギガスペースデータグリッド

少し背景があります。アプリケーションの大部分は読み取り専用ですが、読み取り/書き込みのユーザーデータと、書き込みのみのユーザーデータがあります(かなり不正確な場合もあります)。さらに、定期的に、または管理者の介入によって、キャッシュをフラッシュして埋めることができるツールがあると便利です。

最初のオプションに関して-RMIのオーバーヘッドとJavaシリアル化のパフォーマンスについて懸念はありますか?

4

2 に答える 2

3

また、 HazelcastCoherenceGemStoneもチェックしてください。これらは、クエリをサポートする分散キャッシュ ソリューションです。また、Hibernate 用のすぐに使用できる 2 次キャッシュ プラグインも用意されています。Hazelcast はオープンソースです。

于 2010-06-02T20:50:50.077 に答える
2

3 年前から、Hibernate とアプリケーション レベルのキャッシュ用に EhCache を使用しています。キャッシュの無効化のために RMI で使用しており、非常にうまく機能します。レプリケーションにキャッシュを使用する場合は、オブジェクト グラフに注意する必要があります。カーディナリティの関係が高くなると、オブジェクト グラフが非常に重くなる可能性があります。

Hibernate に EhCache を使用する場合は、クエリ キャッシュに使用できます (読み取り専用テーブルの場合は改善されます)。テーブルが変更されると、キャッシュが自動的に消去されます。EhCache を使用してコレクションをキャッシュすることも、サブセレクトの結合を避けるために良い考えです。

一定の間隔でキャッシュを消去するには、キャッシュを消去する EhCache のキャッシュ拡張機能を実装できます。うまくいきました。

よろしく、ジョナサン。

于 2010-05-28T21:05:43.187 に答える