kk-anti-reptile icon indicating copy to clipboard operation
kk-anti-reptile copied to clipboard

请问源码中ip的规则中,哪里能看到会把当前的key设置到redis中。

Open jiazhanfeng opened this issue 2 years ago • 0 comments

RAtomicLong rRequestCount = this.redissonClient.getAtomicLong("ratelimiter_request_count".concat(requestUrl).concat(ipAddress)); RAtomicLong rExpirationTime = this.redissonClient.getAtomicLong("ratelimiter_expirationtime".concat(requestUrl).concat(ipAddress)); if (!rExpirationTime.isExists()) { rRequestCount.set(0L); rExpirationTime.set(0L); rExpirationTime.expire((long)expirationTime, TimeUnit.MILLISECONDS); } else { RMap rHitMap = this.redissonClient.getMap("ratelimiter_hit_crawlerstrategy"); if (rRequestCount.incrementAndGet() > (long)requestMaxSize || rHitMap.containsKey(ipAddress)) { rExpirationTime.expire(10L, TimeUnit.DAYS); rHitMap.put(ipAddress, requestUrl); System.out.println("Intercepted request, uri: " + requestUrl + ", ip:" + ipAddress + " request " + requestMaxSize + " times in " + expirationTime + " ms"); return true; } }

jiazhanfeng avatar Sep 01 '22 09:09 jiazhanfeng