2016-08-04 5 views
3

こんにちは私はgemfireには新しく、私は設定したアイドルタイムの後に特定のキーのためにgemfire領域からデータを取り出したいと思います。redisのような特定のキーのデータを期限切れにすることは可能ですか

私は以下のコードで赤字を使ってこれを行いました。

jedis.set(key, value); 
config.setMaxIdle(50); 
jedis.expire(key, config.getMaxIdle()); 

しかし、それはどのようにgemfireで行うのですか。

助けてください。

ありがとうございました。

答えて

1

あなたが特定の地域のデータを削除したい場合は、次のコード試してください:それは私の状況での作品です

Region<String, String> region = cache .<String, String> createClientRegionFactory(ClientRegionShortcut.CACHING_PROXY) .setEntryTimeToLive(new ExpirationAttributes(50)) .create(PropertiesCache.getInstance().getProperty("region")); 

を。

2

カスタムの有効期限を使用するようにリージョンを設定すると、個々のキーの有効期限を制御できます。 CustomExpiryインターフェイスの実装を提供します。このインターフェイスは、各エントリを調べ、期限が切れる時期を決定します。たとえば、次のように

RegionFactory regionFactory = ... 
regionFactory.setCustomEntryIdleTimeout(new CustomExpiry() { 
    public ExpirationAttributes getExpiry(Entry entry) { 
     if(entry.getKey().equals("XXX")) { 
     return new ExpirationAttributes(50, ExpirationAction.INVALIDATE); 
     } 
    } 
}); 
関連する問題