2017-09-05 11 views
0

IMapのクライアント上の連続クエリキャッシュにいくつかのエントリ(つまり、述語に依存する)をキャッシュします。しかし、エントリが100回/秒の更新を受信したとしても、遅延秒(すなわち30秒)後にのみCQCに更新を送信したい。これは、遅延秒を30秒に設定することで達成できます。&はtrueに合体します。Hazelcast連続クエリキャッシュ - バッチサイズの容量と結合

QueryCacheConfig cqc = new QueryCacheConfig(); 
cqc.setDelaySeconds(30); 
cqc.setCoalesce(true); 
cqc.setBatchSize(30) 

CQCは上記の使用例に完全に適合します。

しかし、バッチサイズの容量に達するまで遅延秒後にCQCがアップデートを受信して​​いないことに気付いています。これは予想される動作ですか? 遅延秒後またはバッチサイズがその容量に達した後に、CQCがエントリの最新の更新値を受け取ると考えました。

+0

再生器も共有できますか?私の試行時点で、それは動作しているようです。 – mrck

+0

@mrck - 見た目のバグが報告されていますhttps://github.com/hazelcast/hazelcast/issues/11331 – Hiten

+0

はい報告されていますが、再生機は最終的に予想される動作が発生するため有用ではないようです。あなたが別の再生器を持っているなら、それを見るのはすばらしいでしょう。 – mrck

答えて

0

delaySecondsとbatchSize 'OR'の関係。 batchSizeに達するか、またはdelaySecondsが渡されると、更新がキャッシュにプッシュされます。 coalesceがtrueの場合、キーの最新の更新のみがキャッシュにプッシュされます。

私たちはintellijでテストする際にいくつかの問題を発見しました。 intellijを使用している場合は別のIDEを使用してみてください

関連する問題