2016-09-05 16 views
4

春のWebベースのアプリケーションで静的データのキャッシュメカニズムを実装する計画は、どれが最良か、どのように動作するかを説明できますか?Spring MVCのehcacheまたはSpringキャッシュでのキャッシュのベストプラクティスは何ですか?

  • ehcacheを
  • 春キャッシュ
+0

を選択した場合は、ehcacheをし、春のキャッシュとの間の比較をしたいですか? –

+0

いいえ、私はこれらの2つのサポート、または私はキャッシュを達成するために両方を使用する必要がどのように知りたいですか? –

答えて

6

免責事項:私はTerracotta/Software AG従業員午前、Ehcacheの

EhcacheのメンテナはJVMのキャッシュライブラリは、デフォルトとして使用されていることで有名ですHibernate ORMの第2レベルキャッシュ

Spring cacheがSpring 3.1で導入され、@CachePutのようなアノテーションを使用して、Springアプリケーションでのキャッシュの使用を定義しました。デフォルトでSpringキャッシュはプレーンマップを使用しますが、Ehcacheを含む一般的なキャッシングフレームワークを使用するようにコンフィグレーションできます。

Spring 4.1以降、Springキャッシュは012VMをサポートしています。それが何を意味するのか

は、あなたはJSR-107のキャッシングの注釈を追加し、あなたのキャッシュライブラリ(ehcache 2 or 3/guava/caffeine/etc.)を選択することができるということです。あなたも、春に縛られない、任意のキャッシュ・ベンダーに縛らしていませんキャッシュ注釈!

ありthis nice blog post explaining the parallel between Spring cache annotations and JSR-107 annotationsだと、あなたが、あなたの春のブートアプリケーションでEhcache3を使用するthere's another interesting blog post explaining you how to integrate it in your app

+0

JSRアノテーションの1つは、雷の塊の問題からの保護がないということです。その機能では、CacheResultメソッド本体が呼び出されないようにローダーを使用する必要があります。それは本当に醜い取得します。 –

+0

ありがとう、ロットアンソニー、私の疑問は、私はユーザーのキャッシュとスプリングキャッシュをする必要がありますか? –

+0

@DelliKilari、アプリケーションでSpringキャッシュを有効にし、コード内でJcache/jsr107アノテーションを使用し、キャッシュ実装としてehcache3やその他のjsr107実装をコンフィグレーションすることをお勧めします(私の回答のリンクを参照) –

関連する問題