From 69cf777a8fbbb2804c5c6a7be297e7fbd6e04f4c Mon Sep 17 00:00:00 2001 From: GYJ <1157756119@qq.com> Date: Mon, 24 Mar 2025 12:26:36 +0800 Subject: [PATCH] =?UTF-8?q?ip=20=E8=AF=B7=E6=B1=82=E6=AC=A1=E6=95=B0?= =?UTF-8?q?=E9=99=90=E5=88=B618?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sqx/common/aspect/IpAccessCounter.java | 25 +++++++++---------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/sqx/common/aspect/IpAccessCounter.java b/src/main/java/com/sqx/common/aspect/IpAccessCounter.java index 2fcece60..1e217119 100644 --- a/src/main/java/com/sqx/common/aspect/IpAccessCounter.java +++ b/src/main/java/com/sqx/common/aspect/IpAccessCounter.java @@ -63,22 +63,21 @@ public class IpAccessCounter { removeCount.set(0); long currentTime = System.currentTimeMillis(); Set removedIps = new HashSet<>(); - for (Map.Entry> entry : IP_ACCESS_TIMES.entrySet()) { - List accessTimes = entry.getValue(); - if (accessTimes == null || accessTimes.isEmpty()) { - continue; - } - accessTimes.removeIf(time -> currentTime - time > ONE_MINUTE); - if (accessTimes.isEmpty()) { - removedIps.add(entry.getKey()); - } - } -// IP_ACCESS_TIMES.forEach((ip, accessTimes) -> { +// for (Map.Entry> entry : IP_ACCESS_TIMES.entrySet()) { +// List accessTimes = entry.getValue(); // accessTimes.removeIf(time -> currentTime - time > ONE_MINUTE); // if (accessTimes.isEmpty()) { -// removedIps.add(ip); +// removedIps.add(entry.getKey()); // } -// }); +// } + IP_ACCESS_TIMES.forEach((ip, accessTimes) -> { + if (accessTimes != null && !accessTimes.isEmpty()) { + accessTimes.removeIf(time -> currentTime - time > ONE_MINUTE); + if (accessTimes.isEmpty()) { + removedIps.add(ip); + } + } + }); removedIps.forEach(IP_ACCESS_TIMES::remove); Set removedBlacklistIps = new HashSet<>();