金庆的专栏

  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  372 随笔 :: 0 文章 :: 454 评论 :: 0 Trackbacks

场景局部拥挤不应该造成整服都卡


网游中经常 出现的情况是,某个地图的局部人数众多,例如大型的群架,抢Boss,开活动等,

因为玩家聚集,9屏广播量巨增,网关来不及处理,造成过载网关上的所有人都很卡。


目前的对策是防止网关过载,多开网关 ,远远超过正常需要的数量。

假设某个网关极限可处理100人集中时的9屏广播,广播消息量为人数的平方,200人集中时就需要4个网关。

无论网关数量多少,玩家聚集的程度稍有增加 ,就能轻易突破网关的负载力。


过载网关上的部分玩家并不在拥挤的场景中,他们按理不应该卡。

某个场 景局部拥挤,卡点是正常的。

但是,其他服务器上的玩家不该卡,其他地图上的玩家不该卡,该场景空旷处的玩家不访卡。

卡的玩家离开拥挤点就可以恢复正常。


可以用公平队列(fair-queue)来解决该问题。

posted on 2013-12-14 11:50 金庆 阅读(419) 评论(0)  编辑 收藏 引用 所属分类: 2. 网游开发

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理