站长蚂蚁论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
热搜: 活动 交友 discuz
查看: 1095|回复: 0
打印 上一主题 下一主题

游戏专用服务器和普通的服务器有什么区别?

[复制链接]

30

主题

31

帖子

166

积分

幼儿蚂蚁

Rank: 2

积分
166
跳转到指定楼层
楼主
发表于 2017-8-25 15:43:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
游戏专用服务器里面装载着所有用户的登录、等级、装备等数据信息。与普通的服务器性比较,游戏专用服务器比一般的服务器的保存状态要多的多,并且每一个用户都是独立存在的。
游戏专用服务器与普通服务器相比较来说,游戏专用服务器能保存更多的玩家的状态。玩家的等级、装备等属性就不用说了,一般的即时通讯服务也会有,还有一些马上就会变化的数据:某个玩家的生命值、发技能前后的法力值等等,这些值区别于一般的属性值,如名字、ID这些的差异,他们会经常性的变化,还会参与到逻辑的计算中,比如你一个多少等级的玩家用了什么装备之后法力值变化为多少,打在一个多少属性的玩家身上会不会被他闪避、会不会产生暴击等信息,这些信息在游戏专用服务器中会被一一保存下来。
游戏专用服务器中每一个玩家都是独立存在的,每一个玩家的数据、请求等都是独立的,玩家彼此间的数据并没有任何交互。这也是游戏专用服务器与普通服务器之间最大的区别!至于客户端之间会有交互这一点,举个最简单的例子,一个人在一个场景里面说了一句话,那么同一个屏幕的玩家也需要能够看到他说的这句话。此时游戏服务器就需要判断,多远的距离以内的玩家,会认定为是"同屏幕"的玩家,需要向这些玩家广播这个玩家说的这句话。
这个广播就比较麻烦了。先要计算哪些玩家在"同屏幕",也就是我们在第一点提到的玩家身上某些经常变化的属性需要做的运算,在这里需要根据玩家的坐标,找出来跟在同屏幕的玩家,用到的是AOI的概念。另外,找到了这些需要接收这个消息的玩家之后,将消息转发给它们又是一个IO密集的操作,假如场景中有10个人,那么一句话就需要同时广播给另外9个人,如果有100人、1000人呢,?量就更大了。所以同样的一个硬件配置的服务器,可能跑Nginx可以同时处理上万的链接,但是对于一个游戏服务器就只有1、2千了。就是因为游戏服务器是一个CPU密集而且IO密集的服务器类型。
      此外,游戏专用服务器需要更好的数据承载能力和处理能力。而普通服务器则在各个方面都比较均衡。

更多联系13373909311 微信同号  李经理 QQ 462185805


回复

使用道具 举报

关闭

站长推荐上一条 /1 下一条

QQ|Archiver|手机版|小黑屋|站长蚂蚁-站长之家 ( 赣ICP备15000807号

GMT+8, 2024-5-4 15:57

Powered by 蚂蚁站长论坛

© 2007-2024 bbs.jzmayi.com

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