From 9e700e28e1f56ce834d5b521d813f0b7ddbf8a4d Mon Sep 17 00:00:00 2001 From: gua Date: Mon, 16 Oct 2023 06:23:24 +0530 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96v2board=20=E7=94=A8=E6=88=B7?= =?UTF-8?q?=E9=AA=8C=E8=AF=81=E6=80=A7=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- extras/auth/v2board.go | 17 +++++++++-------- extras/trafficlogger/http.go | 4 ++-- 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/extras/auth/v2board.go b/extras/auth/v2board.go index e1f31a0..6503c10 100644 --- a/extras/auth/v2board.go +++ b/extras/auth/v2board.go @@ -21,8 +21,8 @@ type V2boardApiProvider struct { // 用户列表 var ( - users []User - lock sync.Mutex + usersMap map[string]User + lock sync.Mutex ) type User struct { @@ -52,7 +52,7 @@ func getUserList(url string) ([]User, error) { func UpdateUsers(url string, interval time.Duration) { - fmt.Println("定时更新用户列表进程已开启") + fmt.Println("用户列表自动更新服务已激活") ticker := time.NewTicker(interval) defer ticker.Stop() @@ -66,7 +66,10 @@ func UpdateUsers(url string, interval time.Duration) { continue } lock.Lock() - users = userList + usersMap = make(map[string]User) + for _, user := range userList { + usersMap[user.UUID] = user + } lock.Unlock() } } @@ -79,10 +82,8 @@ func (v *V2boardApiProvider) Authenticate(addr net.Addr, auth string, tx uint64) lock.Lock() defer lock.Unlock() - for _, s := range users { - if s.UUID == string(auth) { - return true, strconv.Itoa(s.ID) - } + if user, exists := usersMap[auth]; exists { + return true, strconv.Itoa(user.ID) } return false, "" } diff --git a/extras/trafficlogger/http.go b/extras/trafficlogger/http.go index e06cc62..da06537 100644 --- a/extras/trafficlogger/http.go +++ b/extras/trafficlogger/http.go @@ -37,7 +37,7 @@ type TrafficPushRequest struct { // 定时提交用户流量情况 func (s *trafficStatsServerImpl) PushTrafficToV2boardInterval(url string, interval time.Duration) { - fmt.Println("提交用户流量情况进程已开启") + fmt.Println("用户流量情况监控已启动") ticker := time.NewTicker(interval) defer ticker.Stop() @@ -46,7 +46,7 @@ func (s *trafficStatsServerImpl) PushTrafficToV2boardInterval(url string, interv select { case <-ticker.C: if err := s.PushTrafficToV2board(url); err != nil { - fmt.Println("提交用户流量情况失败:", err) + fmt.Println("用户流量信息提交失败:", err) } } }