摇一摇加好友功能
游戏中的好友系统通常会就有面对面添加好友的功能, 功能具体内容就是输入相同数字串进行搜索,就能搜索到一定时间内输入相同数字串的玩家。从理解上看功能描述较为简单,但具体的实现过程还是有很多需要注意的地方。
首先就是功能的整体结构, 可以采用中心化的方法, 对于发送了请求的玩家进行信息的存储, 全服所有玩家都把数据发送过来, 然后在中心节点上进行处理,最后处理结果发送玩家。该方法的好处是处理起来简单, 通信较少,保序性好,其具体的结构框架如图下图1所示:
图1 中心化的实现方案
上述方案将玩家请求数据全部发送到中心节点由中心节点进行处理,中心节点将符合要求的玩家信息发送到对应的GameServer上,这样相对通信量较少, 数据集中, 实现起来也比较简单,但问题是对于中心节点的压力也是比较大的, 同时中心节点一旦出现问题整个功能都将失效。因此对于高可靠性来说可以尝试去中心化的实现方法,具体方案结构如下图2所示:
图2中可以看出每个GameServer都是一个中心, 本服的玩家将数据发送到该服务器某个进程&#