游戏服务器架构:游戏服务端如何支持百万玩家同时在线

用通俗的方法来描述一个好的服务端架构,最基础也是最重要的就两点: 支持百万玩家同时在线,不出问题 。这两点也就分别对应了高并发和高可用。

这篇文章系统的介绍游戏服务端中的高并发和高可用。

高并发和高可用是一个相辅相成的工作,当我们支持百万玩家同时在线时却无法保证服务器的稳定可用,那高并发支持就无从谈起;而如果当玩家数量较多时服务器就常常出问题,那也不能称为高可用。

一、水平扩展

水平扩展是高并发和高可用的基础,通过支持水平扩展,我们理论上可以通过增加机器获得无限的承载上限,从而支持高并发;在此基础上,若某个进程出现异常,其他进程可以替代其提供服务,从而实现了高可用。

以下图为例,对于不支持水平扩展的架构,游戏服务器中只有一个战斗进程为所有的玩家提供战斗服务,这里存在两个问题:1.一个进程最多只能使用一个一台机器的计算资源,存在性能上限。2.若这个进程或者所在机器/网络发生异常,那么整个系统就不可用了。

不支持水平扩展

水平扩展有两种常见的实现模型:

  • 大厅服和所有的战斗进程进行全连接,需要访问战斗服务时去管理器中查询服务所在的进程地址,然后直接去访问进程。 
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值