レート制限(時間ウィンドウ内でリクエスト/アクションがいくつまで許可されるかを制限すること)はRedisの一般的なユースケースです。Redisの高速なアトミックカウンターとTTLはこのために理想的です。複数のアルゴリズム(固定ウィンドウ、スライディングウィンドウ、トークンバケット)が存在し、それぞれトレードオフがあります。
固定ウィンドウ(最も単純)
() {
key = ;
count = redis.(key);
(count === ) redis.(key, windowSec);
count <= limit;
}
