游戏开发论坛

 找回密码
 立即注册
搜索
查看: 3007|回复: 6

网游服务器怎么合理解决连接对象和用户身份的对应关系?

[复制链接]

3

主题

9

帖子

55

积分

注册会员

Rank: 2

积分
55
发表于 2014-10-10 19:08:18 | 显示全部楼层 |阅读模式
长连接的网游服务器,一个连接对象往往对应着一个玩家在游戏中的身份对象,和很多大型mmorpg地图一样是分块的,因此当服务器收到一个连接对象发来的请求命令时,首先要知道该连接对象代表的是哪个玩家,该玩家处于哪个地图分块,才好进一步处理,这些信息按照我的设想有两个方案:一是存储在类似key-map这样的数据结构里,每次去查询。第二个方案则是和作为连接对象的成员进行绑定。1号方案的问题在于人多了速度会有影响,因为每次往往要查询不止一个map。第二个方案的问题在于,长连接有掉线的可能,一旦掉线会丢失用户信息,如果是那种掉线后啥也不管的游戏也罢,但是有些游戏是希望玩家能断线重连并恢复到掉线前的状态的,这就要求长连接对象应该和玩家对象解耦。实际中我想知道各位高手是怎么权衡这个问题

71

主题

1330

帖子

2585

积分

金牌会员

Rank: 6Rank: 6

积分
2585
发表于 2014-10-13 10:21:09 | 显示全部楼层
第一种方法的key是什么结构?

3

主题

9

帖子

55

积分

注册会员

Rank: 2

积分
55
 楼主| 发表于 2014-10-17 11:41:20 | 显示全部楼层
yahle 发表于 2014-10-13 10:21
第一种方法的key是什么结构?

key就是数字啊

0

主题

8

帖子

30

积分

注册会员

Rank: 2

积分
30
QQ
发表于 2014-10-21 10:36:02 | 显示全部楼层
其实,楼主做法很不利于扩展,为什么业务逻辑要和网络连接挂钩,完全解耦猜对,至于验证,很多办法,比如登入时候服务器分配个密钥,每次通信进行密钥验证就是,如今很多游戏通信需要多重通信都可以使用的(tcp,udp,httpd),这样也方便不同通信之间的转换!

88

主题

2743

帖子

4227

积分

论坛元老

Rank: 8Rank: 8

积分
4227
发表于 2014-10-27 22:11:16 | 显示全部楼层
楼主在哪里看的这些所谓mmorpg服务器编程的信息。

就你问题你能画个简单的时序图出来吗?这样应该能更好帮助你整理思路。

0

主题

9

帖子

60

积分

注册会员

Rank: 2

积分
60
发表于 2014-10-28 20:43:23 | 显示全部楼层
恩?不就是简单的一一对应关系么?

88

主题

2743

帖子

4227

积分

论坛元老

Rank: 8Rank: 8

积分
4227
发表于 2014-10-28 21:18:10 | 显示全部楼层
做真正的mmorpg服务器不是楼主这么做滴。

如果你连什么是她的时序图都画不出来,就如同1+1=2的概念都不知道你就想去解微积分那么荒唐。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-16 23:21

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表