2011-02-08 15 views
6

なぜehcacheやmemcachedのようなボックスキャッシング製品を使用したいのですか?サードパーティキャッシングソフトウェア - それらは何を提供していますか?

簡単なハッシュマップはありませんか?私はこれが単純な質問であると理解していますが、単純なハッシュマップで十分であり、第三者のキャッシングソリューションが過度のものである場合の回答を見たいと思います。

+0

フェリペには、要件を指定する必要があると言われています。たとえば、これは同時キャッシュですか?一方、Miguelitoは、あなたがehcacheで何かを見たのか、memcachedがあなたのようにwouldntしているのか疑問に思う。 – Tom

+0

@Tom - チャネリングは? Jon Skeetは何を言いますか? :-) –

+0

@Stephen - Jon Skeetはキャッシュが何かを尋ねます。彼は平均アクセス時間が0秒です。 – Tom

答えて

4

Ehcacheがあなたに与えることができるものは、HashMapで自分自身を管理する必要があることです。

追放ポリシー。データが成長しない場合は、心配する必要はありません。しかし、最終的にあなたのアプリを破壊するメモリリークを防止したい場合は、追放ポリシーが必要です。 ehcacheを使用すると、有効期間やキャッシュ内の要素のアイドル時間を設定できます。

テラコッタによるクラスタ化キャッシュ。フェールオーバー/スケーラビリティのために複数のTomcatがある場合は、EhcacheをTerracottaクラスタにリンクすることができ、必要に応じてすべてのインスタンスが同じデータを見ることができます。

透過ディスクのオーバーフロー - これはtomcatサーバーまたはテラコッタクラスター上で行われます。データがヒープに収まらない場合。

オフヒープストレージ。 BigMemoryのような新技術は、GCオーバーヘッドなしではるかに大きなメモリ内キャッシュにアクセスできることを意味します。

同時実行性。 EhcacheはConcurrentDistributedMapを使用して、クラスタ化された構成で最適なパフォーマンスを実現できます。

これはちょうど氷山の先端です。

1

Tomが述べたように、要件はすべてを言います。キーと値のペアを使用してデータを配置する場所が必要な場合は、ハッシュマップで行います。

しかし、オーバーフロー機能(マップが "フル"のときにディスクに書き込む)、エントリの有効期限(エントリがしばらくのうちに "触れられていない"ときに削除)、クラスタ化キャッシュ、冗長キャッシュ、ホイールパラダイムを再構築しないで、サードパーティのキャッシングソリューションを使用してください。

私はほぼ3年間、ehcacheを使用してきました。私は全体の機能セットのスライスを使用しますが、私が行う機能は素晴らしい機能です。

関連する問題