aceld / aceld/zinx

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

Aberta
#98 2 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Go
Estrelas
7.8k
Forks
1.3k
Métricas de merge de PRs
Nenhum PR com merge em 30d

Descrição

```
//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
}
```
### 更加方便外部配置.

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.