ee23102d
zhangqijia
支持mongo, grpc接服务器
|
1
2
3
|
package conf
import (
|
cad2b7f3
zhangqijia
reactor: 重构目录, 重构...
|
4
|
"encoding/json"
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
5
|
"fmt"
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
6
7
|
"gopkg.in/yaml.v3"
"io/ioutil"
|
0e5d52de
zhangqijia
reactor: 重构底层框架1.0
|
8
9
10
|
"pro2d/utils"
"pro2d/utils/db"
"pro2d/utils/logger"
|
cad2b7f3
zhangqijia
reactor: 重构目录, 重构...
|
11
|
"strings"
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
12
13
14
15
16
17
18
19
|
)
type RedisConf struct {
Address string `json:"address"`
Auth string `json:"auth"`
DB int `json:"db"`
}
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
20
|
type Etcd struct {
|
286f6dbe
zhangqijia
etcd 保存服务信息
|
21
22
|
Endpoints []string `json:"endpoints"`
DialTimeout int `json:"dialtimeout"`
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
23
24
25
26
27
28
29
|
}
type MongoConf struct {
User string `yaml:"user"`
Password string `yaml:"password"`
Host string `yaml:"host"`
Port int `yaml:"port"`
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
30
31
32
33
|
TimeOut int `yaml:"timeout"`
MaxNum int `yaml:"maxnum"`
}
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
34
|
type SConf struct {
|
cad2b7f3
zhangqijia
reactor: 重构目录, 重构...
|
35
36
37
38
39
|
ID string `yaml:"id"`
Name string `yaml:"name"`
IP string `yaml:"ip"`
Port int `yaml:"port"`
DBName string `yaml:"dbname"`
|
5d9cf01c
zhangqijia
plugin 热更
|
40
41
|
WorkerPoolSize int `yaml:"pool_size"`
PluginPath string `yaml:"plugin_path"`
|
cad2b7f3
zhangqijia
reactor: 重构目录, 重构...
|
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
}
type LogConsole struct {
Level string `yaml:"level" json:"level"`
Color bool `yaml:"color" json:"color"`
}
type LogFile struct {
Level string `yaml:"level" json:"level"`
Daily bool `yaml:"daily" json:"daily"`
Maxlines int `yaml:"maxlines" json:"maxlines"`
Maxsize int `yaml:"maxsize" json:"maxsize"`
Maxdays int `yaml:"maxdays" json:"maxdays"`
Append bool `yaml:"append" json:"append"`
Permit string `yaml:"permit" json:"permit"`
}
type LogConn struct {
Net string `yaml:"net" json:"net"`
Addr string `yaml:"addr" json:"addr"`
Level string `yaml:"level" json:"level"`
Reconnect bool `yaml:"reconnect" json:"reconnect"`
ReconnectOnMsg bool `yaml:"reconnectOnMsg" json:"reconnectOnMsg"`
}
type LogConf struct {
TimeFormat string `yaml:"TimeFormat" json:"TimeFormat"`
LogConsole *LogConsole `yaml:"Console" json:"Console"`
LogFile *LogFile `yaml:"File" json:"File"`
LogConn *LogConn `yaml:"Conn" json:"Conn"`
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
72
73
74
75
76
77
78
|
}
type ServerConf struct {
ID string `yaml:"id"`
Name string `yaml:"name"`
WorkerID int64 `yaml:"workerid"`
DatacenterID int64 `yaml:"datacenterid"`
|
eb417b0b
zhangqijia
reactor mongo
|
79
|
MongoConf *MongoConf `yaml:"mongo"`
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
80
81
82
|
AccountConf *SConf `yaml:"server_account"`
GameConf *SConf `yaml:"server_game"`
RedisConf *RedisConf `yaml:"redis"`
|
cad2b7f3
zhangqijia
reactor: 重构目录, 重构...
|
83
|
LogConf *LogConf `yaml:"logconf" json:"logconf"`
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
84
85
86
|
Etcd *Etcd `yaml:"etcd"`
}
|
eb417b0b
zhangqijia
reactor mongo
|
87
88
89
|
var(
GlobalConf ServerConf
SnowFlack *utils.Snowflake
|
eb417b0b
zhangqijia
reactor mongo
|
90
|
)
|
9644352a
zhangqijia
登录服改为http,游戏服改为长连...
|
91
|
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
92
93
94
95
96
97
98
99
100
101
102
103
|
func init() {
configFile, err := ioutil.ReadFile("conf/conf.yaml")
if err != nil {
fmt.Printf("conf faild: %v", err)
return
}
//初始化配置
if err = yaml.Unmarshal(configFile, &GlobalConf); err != nil {
fmt.Printf("yaml unmarshal faild: %v", err)
return
}
|
cad2b7f3
zhangqijia
reactor: 重构目录, 重构...
|
104
105
106
107
108
|
c, err := json.Marshal(&GlobalConf.LogConf)
if err != nil {
fmt.Errorf("log conf %v", err)
return
}
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
109
|
//初始化日志
|
cad2b7f3
zhangqijia
reactor: 重构目录, 重构...
|
110
111
112
113
114
|
err = logger.SetLogger(string(c), strings.ToLower(GlobalConf.GameConf.Name))
if err != nil {
fmt.Errorf("log conf %v", err)
return
}
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
115
116
117
|
//初始化雪花算法
SnowFlack = utils.NewSnowflake(GlobalConf.WorkerID, GlobalConf.DatacenterID)
|
eb417b0b
zhangqijia
reactor mongo
|
118
|
|
1584eb4b
zhangqijia
修复创建唯一索引的bug
|
119
120
|
err = db.Connect(GlobalConf.MongoConf.User, GlobalConf.MongoConf.Password, GlobalConf.MongoConf.Host, GlobalConf.MongoConf.Port, GlobalConf.MongoConf.MaxNum, GlobalConf.MongoConf.TimeOut)
if err != nil {
|
cad2b7f3
zhangqijia
reactor: 重构目录, 重构...
|
121
|
logger.Error("connect db err: %v", err)
|
1584eb4b
zhangqijia
修复创建唯一索引的bug
|
122
|
}
|
9644352a
zhangqijia
登录服改为http,游戏服改为长连...
|
123
|
|
ee23102d
zhangqijia
支持mongo, grpc接服务器
|
124
|
}
|