aceld / aceld/zinx

服务器配置应该拎出来,改为注入

Abierto
#98 2 comentarios 0 reacciones 0 asignados Ver en GitHub
Lenguaje dominante
Go
Estrellas
7.8k
Forks
1.3k
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

```
//NewServer 创建一个服务器句柄
func NewServer() ziface.IServer {
printLogo()

s := &Server{
Name: utils.GlobalObject.Name,
IPVersion: "tcp4",
IP: utils.GlobalObject.Host,
Port: utils.GlobalObject.TCPPort,
msgHandler: NewMsgHandle(),
ConnMgr: NewConnManager(),
}
return s
}
```
### 可以改成类似如下的方式吗?
```

type ZConfig struct {
/*
Server
*/
Name string
TcpVersion string
Ip: string
Port int

/*
Zinx
*/
MaxPacketSize uint32 //都需数据包的最大值
MaxConn int //当前服务器主机允许的最大链接个数
WorkerPoolSize uint32 //业务工作Worker池的数量
MaxWorkerTaskLen uint32 //业务工作Worker对应负责的任务队列最大任务存储数量
MaxMsgChanLen uint32 //SendBuffMsg发送消息的缓冲最大长度

}

//iServer 接口实现,定义一个Server服务类
type Server struct {
//服务器配置
Config ZConfig

......
}
/*
创建一个服务器句柄
*/
func NewServer(conf *ZConfig) ziface.IServer {
printLogo()

s := &Server{
Config: conf,
Name: conf.Name,
IPVersion: conf.TcpVersion,
IP: conf.Ip,
Port: conf.Port,
msgHandler: NewMsgHandle(),
ConnMgr: NewConnManager(),
}
return s
}
```
### 更加方便外部配置.

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.