game_sync/ranksrv/main.go

40 lines
1022 B
Go

package main
import (
"time"
"mongo.games.com/goserver/core"
"mongo.games.com/goserver/core/etcd"
"mongo.games.com/goserver/core/module"
_ "mongo.games.com/game"
"mongo.games.com/game/common"
"mongo.games.com/game/model"
"mongo.games.com/game/mq"
)
func main() {
// 自定义配置文件
model.InitGameParam()
// package模块
core.LoadPackages("config.json")
defer core.ClosePackages()
// core hook
core.RegisteHook(core.HOOK_BEFORE_START, func() error {
model.StartupRPClient(common.CustomConfig.GetString("MgoRpcCliNet"), common.CustomConfig.GetString("MgoRpcCliAddr"), time.Duration(common.CustomConfig.GetInt("MgoRpcCliReconnInterV"))*time.Second)
mq.StartConsumer(common.CustomConfig.GetString("RabbitMQURL"), common.CustomConfig.GetString("RMQExchange"), true)
err := model.InitGameKVData()
if err != nil {
panic(err)
}
etcd.Start()
return nil
})
core.RegisteHook(core.HOOK_AFTER_STOP, func() error {
return nil
})
// module模块
w := module.Start()
w.Wait("ranksrv")
}