漫谈分布式游戏服务器

Posted littleschemer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了漫谈分布式游戏服务器相关的知识,希望对你有一定的参考价值。

分布式的意义

游戏服务器为什么要设计成分布式?很简单的原因,为了支持服务器有更多的玩家同时在线。这里的同时在线,是要求玩家能一起交互,而不是简单的在平行世界独立游戏。

如果游戏是单进程架构,受限于cpu和内存的限制,一个进程是不可能支持太多人同时在线的,总会达到一个瓶颈无法突破。PCU(Peak concurrent users),术语代表最高同时在线玩家人数。PCU的上限,跟游戏本身类型,程序架构,机器性能强相关。

分布式的难点

游戏能否设计成分布式,首先应该考虑的是游戏的类型是否能做成无状态的

简单来说,就是玩家的游戏行为,主要是副本玩法,无论在哪个服务器进行,都能愉快无感获得比赛结果。像“王者荣耀”这种moba类玩法,天生就非常适合分布式设计。因为玩家一旦匹配成功,只要保证同一场比赛的玩家都进入同一个战场服即可。又或者像一些卡牌玩法,虽然不是主打全服匹配,但个人副本,本服组队副本,也是可以设计成分布式战斗。

对于MMORPG类型的游戏,首先遇到的拦路虎来自于策划童鞋的脑洞大开。现在的游戏跨服玩法,满大街都是这样的套路。要么把几个生态接近的游戏服绑定为第一个大区,大区内有公共副本玩法;要么以战盟为单位设计军团玩法,寻求范围更为广泛的跨服联盟队伍;要么就是把类似“王者荣耀”的moba玩法融合到游戏里,实现全服匹配。各种跨服玩家大概也就这么几种,若干年内,策划也没法玩出花来。像这种把几个游戏组成一个社区的世界服玩法,本身就是有状态的。也就是说,社区内的玩家就只能进入目标服务器进行游戏,在一个

以上是关于漫谈分布式游戏服务器的主要内容,如果未能解决你的问题,请参考以下文章

漫谈分布式游戏服务器

漫谈分布式游戏服务器

冒险岛一点大区就蓝屏

漫谈分布式微服务中CAP定律和BASE理论

漫谈反射

WebSocket+SLB(负载均衡)会话保持解决重连问题