@@ -30,19 +30,16 @@ public Mono<SlidingWindowLogProfileResponse> createSlidingWindowLog() {
30
30
log .info ("Sliding Window log created. key: {}" , redisKey );
31
31
32
32
return redisTemplate .opsForZSet ()
33
- .add (redisKey , String .valueOf (currentTimestamp ), currentTimestamp )
34
- .flatMap (added -> redisTemplate .opsForZSet ().removeRangeByScore (redisKey , Range .closed (0D ,
35
- calculateTimeRange ())))
36
- .flatMap (removed -> redisTemplate .opsForZSet ().count (redisKey ,
37
- Range .closed (calculateTimeRange (), (double ) currentTimestamp )))
33
+ .removeRangeByScore (redisKey , Range .closed (0D , calculateTimeRange ()))
34
+ .flatMap (removed -> redisTemplate .opsForZSet ().count (redisKey , Range .closed (calculateTimeRange (), (double ) currentTimestamp )))
38
35
.flatMap (count -> {
39
- log .info ("Sliding Window log count: {}" , count );
40
-
41
36
if (count >= SLIDING_WINDOW_MAX_REQUEST ) {
42
37
log .error ("Rate limit exceeded. key: {}" , redisKey );
43
38
return Mono .error (new RateLimitExceededException (RateExceptionCode .COMMON_TOO_MANY_REQUESTS , count ));
44
39
}
45
- return Mono .just (SlidingWindowLogProfileResponse .from (List .of (SlidingWindowLogResponse .from (redisKey , count + 1 ))));
40
+ return redisTemplate .opsForZSet ()
41
+ .add (redisKey , String .valueOf (currentTimestamp ), currentTimestamp )
42
+ .flatMap (added -> Mono .just (SlidingWindowLogProfileResponse .from (List .of (SlidingWindowLogResponse .from (redisKey , count + 1 )))));
46
43
});
47
44
}
48
45
0 commit comments