2

こんにちは、EhCache で解決する特定のタスクがありますが、それを達成できません。

「永久キャッシュ」を構築したいと考えています。これは、差し迫った使用のためにメモリ内に少量のアイテムを持ち、残りはディスク上に永続化されます。私は通常、データを複数のスレッドでキャッシュに書き込み、再起動後もそれらを使用できるように、それらのアイテムを常にディスクに保持したいと考えています。

<cache name="eternal_cache" maxBytesLocalHeap="1%" maxBytesLocalDisk="2G"
       eternal="false" timeToLiveSeconds="0"
       timeToIdleSeconds="120" overflowToDisk="true"
       diskPersistent="true" memoryStoreEvictionPolicy="LFU"
       transactionalMode="off"/>

基本的に、EhCache で定義された永続化機能が必要ですが、永続化が許可されていないサイズ制限があります。

私の構成ではメモリ内にアイテムがありますが、適切にシャットダウンしないとehcacheマネージャーがデータを失うという問題に遭遇しました。flush() について読みましたが、ディスク上にアイテムを保持しますが、メモリ内に少なくともいくつかのデータが必要です。

私のニーズに合わせてキャッシュを構成する方法を教えてください。

4

1 に答える 1

2

公式マニュアルを読んだ後、私は解決策を見つけました。

Ehcache Persistence 戦略を使用してのみ永続化することができますが、これは Enterprise バージョンにあります。

通常版ではflush()orを呼び出すだけで可能shutdown()です。

于 2013-03-29T10:10:05.623 に答える