From 549a62a9752485f97429216add886f1bccae44a1 Mon Sep 17 00:00:00 2001 From: Rogee Date: Sat, 17 Jan 2026 12:33:35 +0800 Subject: [PATCH] docs: add rate limit redis smoke test --- docs/rate_limit_redis.md | 53 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 docs/rate_limit_redis.md diff --git a/docs/rate_limit_redis.md b/docs/rate_limit_redis.md new file mode 100644 index 0000000..692f5cc --- /dev/null +++ b/docs/rate_limit_redis.md @@ -0,0 +1,53 @@ +# Rate Limit Redis Smoke Test + +This note records the local Redis setup and a quick smoke test for rate-limit storage. + +## Docker setup (local) + +Image source used in this environment: +- `docker.hub.ipao.vip/redis:7` + +Start container (password enabled): + +```bash +sudo -n docker run -d --name quyun-redis -p 6379:6379 docker.hub.ipao.vip/redis:7 \ + redis-server --requirepass testpass +``` + +## Config sample + +```toml +[Http.RateLimit] +Enabled = true +Max = 120 +WindowSeconds = 60 +Message = "Too Many Requests" + +[Http.RateLimit.Redis] +Addrs = ["127.0.0.1:6379"] +Username = "" +Password = "testpass" +DB = 2 +Prefix = "rl:" +``` + +## Smoke test commands + +```bash +sudo -n docker exec quyun-redis redis-cli ping +sudo -n docker exec quyun-redis redis-cli -a testpass ping +sudo -n docker exec quyun-redis redis-cli -a testpass -n 2 set rl:tenant:demo 1 EX 60 +sudo -n docker exec quyun-redis redis-cli -a testpass -n 2 get rl:tenant:demo +sudo -n docker exec quyun-redis redis-cli -a testpass -n 0 get rl:tenant:demo +``` + +Expected behavior: +- First ping returns `NOAUTH Authentication required.` +- Authenticated ping returns `PONG`. +- DB 2 contains `rl:tenant:demo = 1`, DB 0 does not. + +## Cleanup + +```bash +sudo -n docker rm -f quyun-redis +```