增加智能限流,解决一个镜像多个请求造成误杀问题

This commit is contained in:
user123456
2025-06-11 15:19:04 +08:00
parent 99389f26bb
commit 4977266586
2 changed files with 130 additions and 2 deletions

View File

@@ -260,8 +260,11 @@ func RateLimitMiddleware(limiter *IPRateLimiter) gin.HandlerFunc {
return
}
// 检查是否允许本次请求
if !ipLimiter.Allow() {
// 智能限流判断:检查是否应该跳过限流计数
shouldSkip := smartLimiter.ShouldSkipRateLimit(cleanIP, c.Request.URL.Path)
// 只有在不跳过的情况下才检查限流
if !shouldSkip && !ipLimiter.Allow() {
c.JSON(429, gin.H{
"error": "请求频率过快,暂时限制访问",
})