游戏重复登录逻辑处理

2016-05-22  本文已影响187人  randyjia

游戏业务必须处理的一个问题就是:处理多设备登录同账号的问题。一般说来,业务都是需要把之前登陆的账号踢下线。我们的游戏底层业务是一个tcp_agent和player进程一一对应:tcp_agengt处理网络层:收发数据、解析数据,向player进程收和发消息;player进程处理游戏业务逻辑。
踢下线的处理有两种方式: 新启和绑定,介绍如下

新启

所谓新启,意思就是新启一个一样的进程来处理,把之前的进程退出。如下图所示:

幻灯片2.jpg

注意启动p2的时候,从db中获取到的一定保证是p1持久化的最新数据,这里需要同步等待,不能异步执行。

绑定

绑定不需要启动p2, 把t2对应的player进程绑定为p1即可。


幻灯片1.jpg

两种方法区别

上一篇 下一篇

猜你喜欢

热点阅读