update 优化 替换RedisUtils中的废弃方法getKeysStreamByPattern及trySetRate

dev
疯狂的狮子Li 1 year ago
parent 36d5d612ed
commit 5f3a2ebcaa

@ -4,6 +4,7 @@ import lombok.AccessLevel;
import lombok.NoArgsConstructor;
import org.dromara.common.core.utils.SpringUtils;
import org.redisson.api.*;
import org.redisson.api.options.KeysScanOptions;
import java.time.Duration;
import java.util.Collection;
@ -37,7 +38,7 @@ public class RedisUtils {
*/
public static long rateLimiter(String key, RateType rateType, int rate, int rateInterval) {
RRateLimiter rateLimiter = CLIENT.getRateLimiter(key);
rateLimiter.trySetRate(rateType, rate, rateInterval, RateIntervalUnit.SECONDS);
rateLimiter.trySetRate(rateType, rate, Duration.ofSeconds(rateInterval));
if (rateLimiter.tryAcquire()) {
return rateLimiter.availablePermits();
} else {
@ -518,13 +519,34 @@ public class RedisUtils {
/**
* ( id)
*
* <P>
* limit-(0,)
* pattern-(null)
* chunkSize-(0,1000)
* type-(null,)
* </P>
* @see KeysScanOptions
* @param pattern
* @return
*/
public static Collection<String> keys(final String pattern) {
Stream<String> stream = CLIENT.getKeys().getKeysStreamByPattern(pattern);
return stream.collect(Collectors.toList());
return keys(KeysScanOptions.defaults().pattern(pattern).chunkSize(1000));
}
/**
*
* @param keysScanOptions
* <P>
* limit-(0,)
* pattern-(null)
* chunkSize-(0)
* type-(null,)
* </P>
* @see KeysScanOptions
*/
public static Collection<String> keys(final KeysScanOptions keysScanOptions) {
Stream<String> keysStream = CLIENT.getKeys().getKeysStream(keysScanOptions);
return keysStream.collect(Collectors.toList());
}
/**

Loading…
Cancel
Save