--[[ Descripttion:节点初始化 version: Author: Neo,Huang Date: 2022-07-04 14:58:30 LastEditors: Neo,Huang LastEditTime: 2022-07-04 14:59:34 --]] require "skynet.manager" local skynet = require("skynet") local snax = require("snax") local cluster = require("cluster") local modules = require("modules") local machine = require("machine") local constDb = require("db") local constNodes = require("nodes") local root = {} -- 节点端口 local function l_get_node_port(nodeName, portName) if constNodes[nodeName] == nil or constNodes[nodeName][portName] == nil then return end return constNodes[nodeName][portName] end -- 控制台 function root:init_console() machine.init() -- 服务管家 skynet.uniqueservice("srvSteward") skynet.newservice("debug_console", l_get_node_port(skynet.getenv("nodeName"), "debugPort") or 9300) -- if not skynet.getenv "daemon" then -- skynet.newservice("console") -- end end -- 日志 function root:init_logger() skynet.newservice("srvLoggerMgr") skynet.uniqueservice("statisticLogSrv") end -- 数据库 function root:init_mysql() local handle = snax.uniqueservice("srvMysqlMgr") handle.req.init("game", constDb["mysql"]["game"]) -- 初始数据库表 if skynet.getenv("nodeName") == "master" then modules:init_db_tables() end end -- redis function root:init_redis() local handle = snax.uniqueservice("srvRedisMgr") handle.req.init("game", constDb["redis"]["game"]) end -- 配置 function root:init_config() skynet.uniqueservice("srvConfig") end -- 集群 function root:init_cluster() cluster.open(skynet.getenv("nodeName")) end return root