相对于单机游戏或者其它的局域网游戏不同,大型网络游戏的客户端不再对数据进行逻辑处理,大部分的逻辑计算都放在后端的服务器进行处理,导致玩家与后台
服务器间的数据传输频次多且大多保持长时链接,因此服务器端的响应速度、并发能力、链接稳定性等性能也就直接决定了客户端玩家的用户体验。所以游戏服务
器选型和架构建设跟一般的Web服务器都不同,游戏服务器对于硬件和整个系统架构的要求更高。
服务器快速响应;
由于网游的服务器集群对应所有的游戏客户端,每个玩家的动作都会实时地互相影响。比如玩家间PK,在接收到玩家的指令后,服务器需要立刻判断双方攻击力、
血量、防御力、抗性等属性,然后经过一定的算法才能终输出一个伤害值。这些都是需要服务器进行实时的运算并作出反馈,延迟需要在毫秒级。因此,网游的
逻辑服务器需要强大的计算能力,或是采用高性能的服务器,或是通过计算服务器集群提升整个系统的计算能力。
服务器高并发能力;
对于一款热门的网游,高并发能力是考验服务器端的一道难题。玩家的大规模同时登陆和游戏内的国战、群聊都会需要的并发链接处理。以IM服务器举例,当
某个玩家在游戏发布了一条消息,目标是全地图所有玩家,那么这则消息可能需要同时发送给数万的玩家,而这仅仅只是一个玩家发布的消息,如果是10个、100个
或者10000个玩家同时发送广播呢?所以一个同样硬件配置的服务器,可能跑Nginx(用于处理Web服务器的并发)可以同时处理上万的链接,但是对于一个游戏服务器
就只有1、2千了。因此,对于登录和管理服务器而言,能否支持高并发是重要的考量依据。
大量的数据
一款大型网游在服务器端需要存储大量的数据,比如游戏中的地图数据、资源数据等基本不会有太大变化的数据。另外,玩家每创建一个游戏角色都会有一系列数
据需要存储,比如名称、ID、装备、宠物、属性等等,而且不论这个玩家是否上线、是否长时间没有登录,相关的数据都需要保存。这就是为啥网游的存储服
务器需要较大的、的存储空间来保存这些数据的原因了。