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" rankmq "mongo.games.com/game/ranksrv/mq" ) func main() { rankmq.Init() // 自定义配置文件 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) mq.StartPublisher(common.CustomConfig.GetString("RabbitMQURL"), common.CustomConfig.GetString("RMQExchange"), true, common.CustomConfig.GetInt("RMQPublishBacklog")) 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") }