目前这套服务器架构如下:
1.每个服务器启动的时候都会向MasterServer 注册(上传自己的ip,port,servertype等)
2.MasterServer收到注册消息后广播该信息给连上它的所有服务器,同时给该连上的服务器发送所有服务器的列表
3.单点服务器收到列表后, 依据上面的 连接图 判断 并 进行相应的连接操作。
服务器的相关分工:
login:负责登录处理,分配gate服务器
gate:负责广播消息体 --- 可以无限扩展
game:负责管理玩家信息 --- 可以无限扩展
fight: 负责战斗逻辑 --- 可以无限扩展
room: 分配房间服务器
Q: 为何会有一个Nginx
A: 对于微信小游戏而言,使用的是wss协议,我们都需要使用nginx代理中转为ws协议,这个后面会详细解答。