From d6e10e4ee6521107ecd9e2a18a506d890b0fe567 Mon Sep 17 00:00:00 2001 From: "Yangkai.Shen" <237497819@qq.com> Date: Mon, 30 Sep 2019 15:55:20 +0800 Subject: [PATCH] =?UTF-8?q?:bulb:=20=E6=B7=BB=E5=8A=A0=E6=BA=90=E7=A0=81?= =?UTF-8?q?=E6=B3=A8=E9=87=8A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/scripts/redis/limit.lua | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/spring-boot-demo-ratelimit-redis/src/main/resources/scripts/redis/limit.lua b/spring-boot-demo-ratelimit-redis/src/main/resources/scripts/redis/limit.lua index 4658052..b9a4a15 100644 --- a/spring-boot-demo-ratelimit-redis/src/main/resources/scripts/redis/limit.lua +++ b/spring-boot-demo-ratelimit-redis/src/main/resources/scripts/redis/limit.lua @@ -10,11 +10,11 @@ local max = tonumber(ARGV[4]) -- 移除指定分数区间内的所有元素,expired 即已经过期的 score -- 根据当前时间毫秒数 - 超时毫秒数,得到过期时间 expired redis.call('zremrangebyscore', key, 0, expired) --- 获取 zset 中的元素个数 -local current = tonumber(redis.call('zcard', key)) --- +-- 获取 zset 中的当前元素个数 +local current = tonumber(redis.call('zcard', key)) local next = current + 1 + if next > max then -- 达到限流大小 返回 0 return 0;