public class RedissonRateLimiter extends RedissonObject implements RRateLimiter
codec, commandExecutor| Constructor and Description |
|---|
RedissonRateLimiter(CommandAsyncExecutor commandExecutor,
String name) |
| Modifier and Type | Method and Description |
|---|---|
void |
acquire()
Acquires a permit from this RateLimiter, blocking until one is available.
|
void |
acquire(long permits)
Acquires a specified
permits from this RateLimiter,
blocking until one is available. |
RFuture<Void> |
acquireAsync()
Acquires a permit from this RateLimiter, blocking until one is available.
|
RFuture<Void> |
acquireAsync(long permits)
Acquires a specified
permits from this RateLimiter,
blocking until one is available. |
boolean |
tryAcquire()
Acquires a permit only if one is available at the
time of invocation.
|
boolean |
tryAcquire(long permits)
Acquires the given number of
permits only if all are available at the
time of invocation. |
boolean |
tryAcquire(long permits,
long timeout,
TimeUnit unit)
Acquires the given number of
permits only if all are available
within the given waiting time. |
boolean |
tryAcquire(long timeout,
TimeUnit unit)
Acquires a permit from this RateLimiter, if one becomes available
within the given waiting time.
|
RFuture<Boolean> |
tryAcquireAsync()
Acquires a permit only if one is available at the
time of invocation.
|
RFuture<Boolean> |
tryAcquireAsync(long permits)
Acquires the given number of
permits only if all are available at the
time of invocation. |
RFuture<Boolean> |
tryAcquireAsync(long permits,
long timeout,
TimeUnit unit)
Acquires the given number of
permits only if all are available
within the given waiting time. |
RFuture<Boolean> |
tryAcquireAsync(long timeout,
TimeUnit unit)
Acquires a permit from this RateLimiter, if one becomes available
within the given waiting time.
|
boolean |
trySetRate(RateType type,
long rate,
long rateInterval,
RateIntervalUnit unit)
Initializes RateLimiter's state and stores config to Redis server.
|
RFuture<Boolean> |
trySetRateAsync(RateType type,
long rate,
long rateInterval,
RateIntervalUnit unit)
Initializes RateLimiter's state and stores config to Redis server.
|
await, copy, copyAsync, delete, deleteAsync, encode, encode, encode, encodeMapKey, encodeMapKeys, encodeMapValue, encodeMapValues, get, getCodec, getName, getName, isExists, isExistsAsync, migrate, migrateAsync, move, moveAsync, prefixName, rename, renameAsync, renamenx, renamenxAsync, suffixName, toSeconds, touch, touchAsync, unlink, unlinkAsyncclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitcopy, delete, getCodec, getName, isExists, migrate, move, rename, renamenx, touch, unlinkcopyAsync, deleteAsync, isExistsAsync, migrateAsync, moveAsync, renameAsync, renamenxAsync, touchAsync, unlinkAsyncpublic RedissonRateLimiter(CommandAsyncExecutor commandExecutor, String name)
public boolean tryAcquire()
RRateLimiterAcquires a permit, if one is available and returns immediately,
with the value true,
reducing the number of available permits by one.
If no permit is available then this method will return
immediately with the value false.
tryAcquire in interface RRateLimitertrue if a permit was acquired and false
otherwisepublic RFuture<Boolean> tryAcquireAsync()
RRateLimiterAsyncAcquires a permit, if one is available and returns immediately,
with the value true,
reducing the number of available permits by one.
If no permit is available then this method will return
immediately with the value false.
tryAcquireAsync in interface RRateLimiterAsynctrue if a permit was acquired and false
otherwisepublic boolean tryAcquire(long permits)
RRateLimiterpermits only if all are available at the
time of invocation.
Acquires a permits, if all are available and returns immediately,
with the value true,
reducing the number of available permits by given number of permits.
If no permits are available then this method will return
immediately with the value false.
tryAcquire in interface RRateLimiterpermits - the number of permits to acquiretrue if a permit was acquired and false
otherwisepublic RFuture<Boolean> tryAcquireAsync(long permits)
RRateLimiterAsyncpermits only if all are available at the
time of invocation.
Acquires a permits, if all are available and returns immediately,
with the value true,
reducing the number of available permits by given number of permits.
If no permits are available then this method will return
immediately with the value false.
tryAcquireAsync in interface RRateLimiterAsyncpermits - the number of permits to acquiretrue if a permit was acquired and false
otherwisepublic void acquire()
RRateLimiterAcquires a permit, if one is available and returns immediately, reducing the number of available permits by one.
acquire in interface RRateLimiterpublic RFuture<Void> acquireAsync()
RRateLimiterAsyncAcquires a permit, if one is available and returns immediately, reducing the number of available permits by one.
acquireAsync in interface RRateLimiterAsyncpublic void acquire(long permits)
RRateLimiterpermits from this RateLimiter,
blocking until one is available.
Acquires the given number of permits, if they are available and returns immediately, reducing the number of available permits by the given amount.
acquire in interface RRateLimiterpublic RFuture<Void> acquireAsync(long permits)
RRateLimiterAsyncpermits from this RateLimiter,
blocking until one is available.
Acquires the given number of permits, if they are available and returns immediately, reducing the number of available permits by the given amount.
acquireAsync in interface RRateLimiterAsyncpublic boolean tryAcquire(long timeout,
TimeUnit unit)
RRateLimiterAcquires a permit, if one is available and returns immediately,
with the value true,
reducing the number of available permits by one.
If no permit is available then the current thread becomes disabled for thread scheduling purposes and lies dormant until specified waiting time elapses.
If a permit is acquired then the value true is returned.
If the specified waiting time elapses then the value false
is returned. If the time is less than or equal to zero, the method
will not wait at all.
tryAcquire in interface RRateLimitertimeout - the maximum time to wait for a permitunit - the time unit of the timeout argumenttrue if a permit was acquired and false
if the waiting time elapsed before a permit was acquiredpublic RFuture<Boolean> tryAcquireAsync(long timeout, TimeUnit unit)
RRateLimiterAsyncAcquires a permit, if one is available and returns immediately,
with the value true,
reducing the number of available permits by one.
If no permit is available then the current thread becomes disabled for thread scheduling purposes and lies dormant until specified waiting time elapses.
If a permit is acquired then the value true is returned.
If the specified waiting time elapses then the value false
is returned. If the time is less than or equal to zero, the method
will not wait at all.
tryAcquireAsync in interface RRateLimiterAsynctimeout - the maximum time to wait for a permitunit - the time unit of the timeout argumenttrue if a permit was acquired and false
if the waiting time elapsed before a permit was acquiredpublic boolean tryAcquire(long permits,
long timeout,
TimeUnit unit)
RRateLimiterpermits only if all are available
within the given waiting time.
Acquires the given number of permits, if all are available and returns immediately,
with the value true, reducing the number of available permits by one.
If no permit is available then the current thread becomes disabled for thread scheduling purposes and lies dormant until the specified waiting time elapses.
If a permits is acquired then the value true is returned.
If the specified waiting time elapses then the value false
is returned. If the time is less than or equal to zero, the method
will not wait at all.
tryAcquire in interface RRateLimiterpermits - amounttimeout - the maximum time to wait for a permitunit - the time unit of the timeout argumenttrue if a permit was acquired and false
if the waiting time elapsed before a permit was acquiredpublic RFuture<Boolean> tryAcquireAsync(long permits, long timeout, TimeUnit unit)
RRateLimiterAsyncpermits only if all are available
within the given waiting time.
Acquires the given number of permits, if all are available and returns immediately,
with the value true, reducing the number of available permits by one.
If no permit is available then the current thread becomes disabled for thread scheduling purposes and lies dormant until the specified waiting time elapses.
If a permits is acquired then the value true is returned.
If the specified waiting time elapses then the value false
is returned. If the time is less than or equal to zero, the method
will not wait at all.
tryAcquireAsync in interface RRateLimiterAsyncpermits - amounttimeout - the maximum time to wait for a permitunit - the time unit of the timeout argumenttrue if a permit was acquired and false
if the waiting time elapsed before a permit was acquiredpublic boolean trySetRate(RateType type, long rate, long rateInterval, RateIntervalUnit unit)
RRateLimitertrySetRate in interface RRateLimitertype - - rate moderate - - raterateInterval - - rate time intervalunit - - rate time interval unitpublic RFuture<Boolean> trySetRateAsync(RateType type, long rate, long rateInterval, RateIntervalUnit unit)
RRateLimiterAsynctrySetRateAsync in interface RRateLimiterAsynctype - - rate moderate - - raterateInterval - - rate time intervalunit - - rate time interval unitCopyright © 2014–2018 The Redisson Project. All rights reserved.