Projektstart
This commit is contained in:
41
backend/node_modules/bullmq/dist/esm/scripts/getRateLimitTtl-2.js
generated
vendored
Normal file
41
backend/node_modules/bullmq/dist/esm/scripts/getRateLimitTtl-2.js
generated
vendored
Normal file
@@ -0,0 +1,41 @@
|
||||
const content = `--[[
|
||||
Get rate limit ttl
|
||||
Input:
|
||||
KEYS[1] 'limiter'
|
||||
KEYS[2] 'meta'
|
||||
ARGV[1] maxJobs
|
||||
]]
|
||||
local rcall = redis.call
|
||||
-- Includes
|
||||
--[[
|
||||
Function to get current rate limit ttl.
|
||||
]]
|
||||
local function getRateLimitTTL(maxJobs, rateLimiterKey)
|
||||
if maxJobs and maxJobs <= tonumber(rcall("GET", rateLimiterKey) or 0) then
|
||||
local pttl = rcall("PTTL", rateLimiterKey)
|
||||
if pttl == 0 then
|
||||
rcall("DEL", rateLimiterKey)
|
||||
end
|
||||
if pttl > 0 then
|
||||
return pttl
|
||||
end
|
||||
end
|
||||
return 0
|
||||
end
|
||||
local rateLimiterKey = KEYS[1]
|
||||
if ARGV[1] ~= "0" then
|
||||
return getRateLimitTTL(tonumber(ARGV[1]), rateLimiterKey)
|
||||
else
|
||||
local rateLimitMax = rcall("HGET", KEYS[2], "max")
|
||||
if rateLimitMax then
|
||||
return getRateLimitTTL(tonumber(rateLimitMax), rateLimiterKey)
|
||||
end
|
||||
return rcall("PTTL", rateLimiterKey)
|
||||
end
|
||||
`;
|
||||
export const getRateLimitTtl = {
|
||||
name: 'getRateLimitTtl',
|
||||
content,
|
||||
keys: 2,
|
||||
};
|
||||
//# sourceMappingURL=getRateLimitTtl-2.js.map
|
||||
Reference in New Issue
Block a user