feat app 模块化启动

This commit is contained in:
2025-12-13 18:22:35 +08:00
parent 71d4e593c7
commit bc656247c9
41 changed files with 730 additions and 253 deletions

View File

@@ -3,37 +3,51 @@ package app
import (
"common/log"
"common/net/socket/websocket"
"fmt"
"gateway/config"
"gateway/net/ws_gateway"
"sync"
"time"
)
func (p *Program) initWsServer(cfg *config.Config) error {
//p.wsServer = websocket.NewWSServer(
// &ws_gateway.GatewayWsServer{
// Decoder: &ws_gateway.Decoder{},
// },
// log.GetLogger(),
// fmt.Sprintf("tcp4://%v:%d", cfg.SocketServer.Host, cfg.SocketServer.Port),
// true,
// true,
// false,
// false,
// true,
// 8,
// 5*time.Second,
//)
p.wsServer = websocket.NewWSServer(
// ModuleWebsocketServer Websocket服务模块
type ModuleWebsocketServer struct {
wg *sync.WaitGroup
server *websocket.WSServer
}
func (m *ModuleWebsocketServer) Init() error {
m.wg = &sync.WaitGroup{}
m.server = websocket.NewWSServer(
&ws_gateway.GatewayWsServer{},
log.GetLogger().Named("ws_server"),
5*time.Second,
)
return nil
}
func (p *Program) stopWsServer() error {
_ = p.wsServer.Stop()
func (m *ModuleWebsocketServer) Start() error {
m.wg.Add(1)
go func() {
defer m.wg.Done()
_ = m.server.Run(
log.GetLogger().Named("GNET"),
fmt.Sprintf("tcp4://0.0.0.0:%v", config.Get().Serve.Socket.Web.Port),
true,
true,
false,
false,
true,
8,
)
}()
return nil
}
func (m *ModuleWebsocketServer) Stop() error {
if err := m.server.Stop(); err != nil {
log.Errorf("stop websocket server failed: %v", err)
}
m.wg.Wait()
return nil
}