网络游戏吧 关注:1,595,902贴子:29,723,895

相位技术,实现数万人通服。

只看楼主收藏回复


魔兽世界和EVE服务器能够同时支持5万人在线的技术肯定让很多人流口水吧。今天我用redis来模拟实现“相位技术”。所谓“相位技术”就是将服务器分为多个并行的空间。是对传统分割成多个地图场景技术的升级。这个技术通过创建多个并行时空的概念。将多个时空分配到不同的服务器。在客户端请求数据时再将多个时空的数据整合在一起。这样理论上就可以将地图场景再次无限分割。所以理论上使用“相位技术”的服务器承载人数可以达到非常恐怖的5万人。
传统的一个地图一个服务器的做法。如果玩家过多就会大量消耗服务器CPU资源。直到CPU资源耗尽达到服务器人数上限。因为所有逻辑运算都拥挤在一个线程。这种多个功能间资源抢夺的现象会非常明显。而其中玩家移动是最消耗资源的功能。在每一帧中移动的数据都需要同时广播给其他的玩家。这样其他的玩家才能看到这个玩家在移动。
如果屏幕内有1千个玩家,哪么就需要广播1千次。相当于每次移动的数据都放大了1千倍。而移动同步的频率通常在每秒1次到60次。同步频率越高在客户端表现越细腻。如果每秒同步频率是1次,哪么每个用户每秒钟就要发送一次千人的广播。1千个用户在服务器一共要发送1百万次的同步信息。也就是说移动同步信息如果不加限制,哪么将会成指数级别的增加。
每秒消息总数量=同步频率* (提交消息数量+(玩家数量)2)
在实际应用中因为受到屏幕的限制,地图远处的玩家并不需要返回给客户端。因为即使返回了也看不到。所以会采用9宫格的方式对返回的数据加以过滤。也就是将地图划分为多个正方形的格子。每次只返回包括当前格子和周围共9个格子的玩家总数。像魔兽世界这样的扁平地图就可以采用这样的方式。游戏服务器的地图格子会比较大,通常在10米到50米左右。而高度不固定能达到100米甚至更高。


IP属地:江苏1楼2020-09-28 20:06回复
    有点太专业。。网游吧的喷子们肯定不看。


    IP属地:河北来自Android客户端2楼2020-09-28 20:55
    回复
      位面技术


      IP属地:江苏4楼2020-09-28 23:25
      收起回复
        不就是分线 一条线里就几个人


        5楼2020-09-29 03:22
        收起回复
          康康这篇《A New PCR Combination Rule for Dynamic Frame Fusion》岂不更妙


          IP属地:四川6楼2020-09-29 04:02
          回复


            IP属地:广东来自Android客户端7楼2020-09-29 07:21
            回复
              暴雪对魔兽世界各方面的玩法体验一直都在做有效的优化,即便是画面和音效也在持续进步和优化。很多提起魔兽动不动说游戏老了不行了,然而事实上魔兽无论哪一个方面都绝对碾压目前的同类型游戏。包括画面!


              IP属地:浙江来自iPhone客户端9楼2020-09-29 12:41
              收起回复
                那么问题来了,人的,目力可及,能同时关注几个人。


                IP属地:江苏来自Android客户端10楼2020-09-29 12:57
                回复
                  好帖。多说点喜欢看


                  IP属地:天津11楼2020-09-29 12:58
                  回复
                    那么楼主 在俩个格子交接处的玩家数据你怎么处理?互相数据同步吗


                    IP属地:北京12楼2020-09-29 14:51
                    回复
                      “每个用户每秒钟就要发送一次千人的广播。1千个用户在服务器一共要发送1百万次的同步信息”
                      1000用户不应该是每秒发送1000次的包含千人信息的广播么??怎么就成100万次同步信息了?


                      IP属地:浙江13楼2020-09-29 15:20
                      收起回复
                        领地人生就是这样的


                        IP属地:广东来自Android客户端14楼2020-09-30 07:02
                        回复
                          稀客


                          IP属地:山东来自Android客户端16楼2020-09-30 11:03
                          回复