gate
components\gate\gate.go
这段代码是gate的主入口文件。它主要负责初始化和启动游戏服务器的各个组件,包括解析命令行参数、设置日志、初始化网络服务、连接到调度器集群等。
以下是代码的主要功能和流程:
-
命令行参数解析:使用
flag
包解析命令行参数,包括gateid
(网关ID)、configFile
(配置文件路径)、logLevel
(日志级别)和runInDaemonMode
(是否以守护进程模式运行)。 -
初始化随机数种子:使用当前时间的Unix纳秒数作为随机数种子,以确保每次运行时生成的随机数序列不同。
-
解析配置文件:如果指定了配置文件路径,则使用该配置文件;否则,使用默认配置文件。
-
验证网关ID:确保网关ID是一个正整数。
-
设置日志:根据配置文件中的日志级别和日志文件路径设置日志记录。
-
初始化网关服务:创建一个新的
GateService
实例。 -
启动HTTP服务器:根据