游戏登陆流程

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wallwind/article/details/9979985

今天主要讲游戏的登陆流程,
由于我们的后台架构是前端接入层+后端业务进程的架构模式,因此,任何网络连接请求的数据,都要经过前端接入。
首先要说明,目前大多数游戏都是 账号+角色的模式。ok
登陆两种模式1,已在该服创建过账号,创建过角色的玩家
2.在该服没有创建过,账号数据库是没有数据


我们首先说一下我们的进程模式


连接层+业务层+认证层
比如,当一个玩家要玩我们的游戏,首先,客户端发送上来的协议字段是没有具体的账号信息的,
因此我们认为该账号没哟经过认证过的,所以,通过业务层的一个特殊方法将协议数据转发给认证层,
那么认证层做什么事情,他首先去查账号数据库表,是否该账号在该服建立过。
1,新人,数据库是不纯在。那么我们将上送来的账号插入到数据库,同时会根据数据库生成一个uin,这个uin是所有唯一的,长度是8个字节,
使用uin标识改账号的唯一,然后通过一些细节处理,比如加密,打乱等简单处理,在讲该数据,保存到账号cach中,发给前端接入层,
然后在将基本的已认证信息发给玩家,当玩家收到该数据后,表示,该玩家已经在该服有账号了,然后,通过账号登陆,将基本账号数据发送给业务进程,


表示认证通过,我们会通过uin,然后,在通过请求,从角色数据表中查询是否有已有角色创建,下发角色列表。
创建角色,业务进程将会从玩家内存池中,分配一段内存,给该角色。


2.我们会首先从账号缓存中取得数据,如果存在,就认证成功,如果不存在,就去查数据库,然后判断是否存在,在走上诉流程


3,如果玩家已在该服玩过,那么我们会直接从数据库把基本数据插入到缓存里。


这些基本的一个登陆流程了。

猜你喜欢

转载自blog.csdn.net/wallwind/article/details/9979985