2016-08-05 29 views
3

ヘビキャストを使用して、小さな時間のウィンドウ(30分〜50分、ただし60分を超えない)に重要なデータを保存しています。エントリが古いほど、それほど重要ではありません。つまり、OutOfMemoryを回避するためにいくつかのエントリを取り除くことができれば、古いエントリになります。ヘーゼルキャスト - 最も古いエントリが最初にエコーされました

私はこれらのエントリのTTLを60分に設定しましたが、メモリが不足しているときは、最も古いエントリを期限切れにしなくても信頼できる状態にしたいと思います。

EvictionPolicy.LRUの設定を確認しましたが、それを設定しました。最近追加されたマップのエントリの一部が追い出されています。私は、説明されているように、追放のためのエントリーを選ぶために使用されるサンプリングアルゴリズムによると思いますhere

このユースケースをカバーする分散オブジェクトの実装はありますか?

答えて

1

Hazelcast 3.7からは、a custom eviction policyを定義してアルゴリズムを実装することができます。 サンプルはhereです。

ありがとうございました

+0

すごいですね、それをチェックしてください!いくつかの状況で 'LRU'実装が最後に追加されたエントリを削除することが予想されますか?エントリが追加または削除されたときに何かを印刷するエントリリスナを追加することで、このような振る舞いを見ることができました。いくつかのケースでは、最近追加されたエントリの追い出しと、 4 ')。 –

+0

最後に追加されたエントリの削除は、3.7リリースではもう問題にはならないはずです。こちらをご覧ください:https://github.com/hazelcast/hazelcast/issues/4334 – mrck

関連する問題