From 30fe14c0ffc6d884103bd3131be5e4fb3c98cd3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90li?= <15040126243@163.com> Date: Fri, 17 Sep 2021 17:22:25 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=20=E8=8E=B7=E5=8F=96re?= =?UTF-8?q?dis=E5=AE=A2=E6=88=B7=E7=AB=AF=E5=AE=9E=E4=BE=8Bid=E5=B7=A5?= =?UTF-8?q?=E5=85=B7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/ruoyi/common/utils/RedisUtils.java | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/RedisUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/RedisUtils.java index 5ee7c1bdc..769ee7153 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/RedisUtils.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/RedisUtils.java @@ -29,14 +29,26 @@ public class RedisUtils { * 限流 * * @param key 限流key - * @param limitType 限流类型 + * @param rateType 限流类型 * @param rate 速率 * @param rateInterval 速率间隔 + * @return -1 表示失败 */ - public static boolean rateLimiter(String key, RateType rateType, int rate, int rateInterval) { + public static long rateLimiter(String key, RateType rateType, int rate, int rateInterval) { RRateLimiter rateLimiter = client.getRateLimiter(key); rateLimiter.trySetRate(rateType, rate, rateInterval, RateIntervalUnit.SECONDS); - return rateLimiter.tryAcquire(); + if (rateLimiter.tryAcquire()) { + return rateLimiter.availablePermits(); + } else { + return -1L; + } + } + + /** + * 获取实例id + */ + public static String getClientId() { + return client.getId(); } /**