1

大量のデータを保存するために ehCache を使用しています。このキャッシュは毎秒約 3 回アクセスされ、最新の状態に保つ必要があります。キャッシュに必要なすべてのデータを毎分データベースから別のキャッシュ (別のキャッシュマネージャーも) に取得する実行スレッドがあります。私がやりたいことは、データの内容を新しいキャッシュから毎秒アクセスされているキャッシュに、迅速で信頼性の高い同期された方法でコピーすることです。(たとえば、既存のキャッシュと新しいキャッシュを渡す replace メソッドを呼び出し、新しいキャッシュを迅速かつ安全に更新します)

ehCacheでこれを行う方法はありますか?

どんな助けでも大歓迎です。

ありがとうダミアン

4

2 に答える 2

6

ehcache がすぐに解決できる問題に対する複雑な解決策を探しているようです。

必要なキャッシュ マネージャーは 1 つだけです。1 分に 1 回フラッシュするように設定します。必要に応じて、1 分に 1 回キャッシュをフラッシュするスレッドを作成してこれを行います。

キャッシュから何かを取得しようとして、そこにない場合は、データを再度ロードします。キャッシュ ブロックの作成が進行していることを確認したい場合は、同期されたメソッドまたはブロックにこのキャッシュ取得ビットを配置します。

于 2008-11-04T12:42:37.703 に答える
0

スティーブ・マクラウドに+1 。

SelfPopulatingCacheを参照してください

私はこれがあなたが望むことを正確に、そして迅速に行うと信じています。

それでも2 つのキャッシュを維持したい場合は、これが最適な方法です。CacheFactoryインスタンスが自己管理キャッシュからキャッシュされた値を返すようにするだけです。

于 2008-11-04T13:21:29.747 に答える