gopush启动流程
最后更新于:2022-04-02 04:56:03
gopush启动流程:
开启zookeeper
开启redis or mysql
message启动:
~~~
InitConfig() 加载配置
runtime.GOMAXPROCS(Conf.MaxProc) 设置最大同时运行的操作系统进程数
log.LoadConfiguration(Conf.Log) 初始化log
perf.Init(Conf.PprofBind) 初始化性能监控 pprof
InitStorage() 初始化redis or mysql 连接池
InitRPC() 初始化rpc 服务端,供comet模块和web模块调用
InitZK() 初始化zookeeper(链接zk、创建节点、绑定节点信息并监听)
process.Init(Conf.User, Conf.Dir, Conf.PidFile) 初始化工作目录
sig := InitSignal();HandleSignal(sig) 初始化热加载配置文件
~~~
comet启动:
~~~
InitConfig() 加载配置
runtime.GOMAXPROCS(Conf.MaxProc) 设置最大同时运行的操作系统进程数
log.LoadConfiguration(Conf.Log) 初始化log
perf.Init(Conf.PprofBind) 初始化性能监控 pprof
UserChannel = NewChannelList() 创建一个 ChannelList,ChannelBucket个数是本地机器的逻辑CPU个数
StartStats() 初始化 通过http查看统计
StartRPC() 初始化rpc服务端,供web模块调用
StartComet() 初始化comet链接,tcp or websocket
InitZK() 初始化zookeeper(链接zk、创建节点、绑定节点信息并监听、监听message节点)
process.Init(Conf.User, Conf.Dir, Conf.PidFile) 初始化工作目录
signalCH := InitSignal();HandleSignal(signalCH) 初始化热加载配置文件
~~~
web启动:
~~~
InitConfig() 加载配置
runtime.GOMAXPROCS(Conf.MaxProc) 设置最大同时运行的操作系统进程数
log.LoadConfiguration(Conf.Log) 初始化log
InitZK() 初始化zookeeper(链接zk、监听comet节点、监听message节点)
perf.Init(Conf.PprofBind) 初始化性能监控 pprof
StartHTTP() 初始化http服务
process.Init(Conf.User, Conf.Dir, Conf.PidFile) 初始化工作目录
signalCH := InitSignal();HandleSignal(signalCH) 初始化热加载配置文件
~~~
';