K
- keyV
- valuepublic interface RMapCacheAsync<K,V> extends RMapAsync<K,V>
Async interface for map-based cache with ability to set TTL for each entry via
#put(Object, Object, long, TimeUnit)
or #putIfAbsent(Object, Object, long, TimeUnit)
And therefore has an complex lua-scripts inside.
Current redis implementation doesnt have eviction functionality.
Thus entries are checked for TTL expiration during any key/value/entry read operation.
If key/value/entry expired then it doesn't returns and clean task runs asynchronous.
Clean task deletes removes 100 expired entries at once.
In addition there is EvictionScheduler
. This scheduler
deletes expired entries in time interval between 5 seconds to 2 hours.
If eviction is not required then it's better to use RedissonMapReactive
.
Modifier and Type | Method and Description |
---|---|
io.netty.util.concurrent.Future<V> |
putAsync(K key,
V value,
long ttl,
TimeUnit unit) |
io.netty.util.concurrent.Future<V> |
putIfAbsentAsync(K key,
V value,
long ttl,
TimeUnit unit) |
io.netty.util.concurrent.Future<Integer> |
sizeAsync()
Returns the number of entries in cache.
|
addAndGetAsync, containsKeyAsync, containsValueAsync, fastPutAsync, fastRemoveAsync, getAllAsync, getAsync, putAllAsync, putAsync, putIfAbsentAsync, removeAsync, removeAsync, replaceAsync, replaceAsync
clearExpireAsync, expireAsync, expireAtAsync, expireAtAsync, remainTimeToLiveAsync
deleteAsync, isExistsAsync, migrateAsync, moveAsync, renameAsync, renamenxAsync
Copyright © 2014–2015. All rights reserved.