From 8d225f811bd4992a566824272064195a1798eee0 Mon Sep 17 00:00:00 2001 From: wyx2685 Date: Sun, 13 Jul 2025 09:23:06 +0900 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=94=A8=E6=88=B7=E9=99=90=E9=80=9F?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E4=B8=8D=E8=83=BD=E5=90=8C=E6=AD=A5=E6=9B=B4?= =?UTF-8?q?=E6=96=B0BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- limiter/limiter.go | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/limiter/limiter.go b/limiter/limiter.go index 7f3913e..d613f92 100644 --- a/limiter/limiter.go +++ b/limiter/limiter.go @@ -24,11 +24,11 @@ type Limiter struct { DomainRules []*regexp.Regexp ProtocolRules []string SpeedLimit int - UserOnlineIP *sync.Map // Key: Name, value: {Key: Ip, value: Uid} + UserOnlineIP *sync.Map // Key: TagUUID, value: {Key: Ip, value: Uid} OldUserOnline *sync.Map // Key: Ip, value: Uid UUIDtoUID map[string]int // Key: UUID, value: Uid - UserLimitInfo *sync.Map // Key: Uid value: UserLimitInfo - SpeedLimiter *sync.Map // key: Uid, value: *ratelimit.Bucket + UserLimitInfo *sync.Map // Key: TagUUID value: UserLimitInfo + SpeedLimiter *sync.Map // key: TagUUID, value: *ratelimit.Bucket AliveList map[int]int // Key: Uid, value: alive_ip } @@ -91,6 +91,7 @@ func (l *Limiter) UpdateUser(tag string, added []panel.UserInfo, deleted []panel for i := range deleted { l.UserLimitInfo.Delete(format.UserTag(tag, deleted[i].Uuid)) l.UserOnlineIP.Delete(format.UserTag(tag, deleted[i].Uuid)) + l.SpeedLimiter.Delete(format.UserTag(tag, deleted[i].Uuid)) delete(l.UUIDtoUID, deleted[i].Uuid) delete(l.AliveList, deleted[i].Id) }