package config import ( "git.loafle.net/overflow/overflow_service_websocket/commons/config" ) var _config *Config type Config struct { Server ServerConfig `json:"server"` Websocket WebsocketConfig `json:"websocket"` GRpc GRpcConfig `json:"gRpc"` } type ServerConfig struct { Addr string `required:"true"` Tls bool `default:"false"` } type WebsocketConfig struct { WriteTimeout uint8 `default:"0"` ReadTimeout uint8 `default:"0"` PongTimeout uint8 `default:"60"` PingTimeout uint8 `default:"10"` MaxMessageSize int64 `default:"1024"` ReadBufferSize int `default:"4096"` WriteBufferSize int `default:"4096"` UseBinaryMessage bool `required:"false" default:"false"` } type GRpcConfig struct { ServerConfig Pool PoolConfig `json:"pool"` } type PoolConfig struct { InitialCapacity uint8 `defalut:"1"` MaxCapacity uint8 `defalut:"1"` IncreaseCapacity uint8 `defalut:"1"` } func InitConfig(path string) error { if nil != _config { return nil } _config = &Config{} err := config.Load(_config, path) if nil != err { return err } return nil } func GetConfig() *Config { return _config }