feat 排队

This commit is contained in:
2026-01-06 18:36:15 +08:00
parent 8289e2b4d9
commit 46839cd11b
20 changed files with 482 additions and 96 deletions

View File

@@ -25,6 +25,7 @@ func (p *Program) Init(_ svc.Environment) error {
p.moduleList = append(p.moduleList, &ModuleWebServer{})
p.moduleList = append(p.moduleList, &ModuleWebsocketServer{})
p.moduleList = append(p.moduleList, &ModuleGrpcServer{})
p.moduleList = append(p.moduleList, &ModuleLoginQueue{})
for _, module := range p.moduleList {
if err := module.init(); err != nil {

29
app/login_queue.go Normal file
View File

@@ -0,0 +1,29 @@
package app
import (
"gateway/internal/global"
"gateway/internal/handler/ws_handler/login"
"runtime"
)
// ModuleLoginQueue 登录队列模块
type ModuleLoginQueue struct {
login *login.Login
queueUp *login.QueueUp
}
func (m *ModuleLoginQueue) init() error {
m.login = login.NewLoginQueue(global.MaxQueueUpSize)
m.queueUp = login.NewQueueUp(global.MaxQueueUpSize)
return nil
}
func (m *ModuleLoginQueue) start() error {
m.login.Start(runtime.NumCPU())
return nil
}
func (m *ModuleLoginQueue) stop() error {
m.login.Stop()
return nil
}