游戏服务器——登陆服

一、中心服介绍

用户登录校验,校验通过生成秘钥之后其他的登录都是通过此处得到的秘钥进行登录。

 

二、服务器启动流程

1、启动准备

  1. 初始化网络库
  2. 监听事件注册

 

2、开始启动

  1. 创建日志、创建定时器
  2. 创建网络监听服务并启动监听
  3. 挂接逻辑事件(用户线程读取网络数据)
  4. 创建DB服代理服务(连DB服并进行消息交互)
  5. 创建中心服代理服务(连中心服务器并进行消息交互)
  6. 创建守护中心(与守护中心服连接,用于服务器拉起)

 

3、启动流程图

 

三、登陆服与其他服务器之间消息交互

  1. DBServer启动
  2. 中心服启动并和DBServer连接
  3. 网关服启动并和中心服连接
  4. 登陆服启动并分别和DBServer、中心服连接,和中心服连接成功之后将自己服务器数据发送给中心
  5. 中心服收到登陆服发送的服务器数据,将数据广播给已经连接的客户端(网关服、登陆服)
  6. 客户端连接网关服
  7. 客户端发送消息给登陆服(经网关服转发)
  8. 网关服收到客户端消息,并将消息转发给登陆服。如果网关服和登陆服为连接,先连接再发送
  9. 登陆服通过网关服将消息转发给客户端

 

流程图如下:

 

四、类图

可以将登录服划分为四个模块。

4.1 DB服客户端代理

用于和DB服消息交互,详情参考《中心服——4.2 DB服客户端代理》,玩家登录需要和数据库中秘钥进行验证。

4.2 中心服客户端代理

用于和中心服消息交互,详情参考《网关服——6.1 中心服客户端代理》,登录服中的中心服客户端代理,只是用于登录中心成功之后发生服务器消息给中心服。(网关服可以根据登录服服务器消息和登录服进行连接。)

4.3 网关服代理

用于和网关服之间消息交互,当有玩家需要通过网关服将消息转发给登录服,网关服代理会创建一个CLoginUser对象用于和玩家进行交互,详情参考《网关服代理》。

4.4 创建连接对象——CLoginUser

玩家通过网关服和网关服代理登录到登录服,网关服代理会通知网关服创建一个CLoginUser对象用于接收网关服转发的玩家消息,并处理相应消息,主要是登录验证。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值