I was wondering if there is any data on latency benchmarks on the redis_rate client that is publicly available
From the code, any Allow() call in rate limiter runs evalsha, where Redis pushes arguments to a Lua stack, run the Lua script, and then pop the value off which has significant latency implications on redis. Also, running the script blocks other clients as well.
I have verified this by running the SLOWLOG command where the evalsha cmd in Allow() takes up to 15ms.
I was wondering if there is any data on latency benchmarks on the redis_rate client that is publicly available
From the code, any
Allow()
call in rate limiter runsevalsha
, where Redis pushes arguments to a Lua stack, run the Lua script, and then pop the value off which has significant latency implications on redis. Also, running the script blocks other clients as well.I have verified this by running the SLOWLOG command where the
evalsha
cmd inAllow()
takes up to 15ms.