网络安全 频道

曹世军:网络游戏基础系统架构解析

  【IT168 架构师大会】网络游戏近年来的发展可谓是突飞猛进,声光效果也日新月异。玩家在玩效果更进步的游戏的同时,运营商在背后却为网络架构伤透脑筋。网络游戏的基础架构到底是什么样子的?如何能确保玩家更舒服的体验?2009年系统架构师大会上,北京武神世纪网络技术有限公司系统运维经理曹世军先生为我们带来了精彩的演讲。


北京武神世纪网络技术有限公司系统运维经理曹世军

  网络游戏的运维需求

  谈运维首要谈的是实际运营环境中网游所需的资源和架构,那么什么才是网络游戏真正需要的方案了?曹世军解释道,要运营好一款网络游戏,首先要解决以下几方面的问题:

  1、苛刻的数据安全及系统安全要求
  2、超乎寻常的网络延时敏感性及南北互联问题
  3、故障硬件的快速替换及远程控制的可靠性
  4、快速部署能力以满足游戏产品的爆发性增长导致的资源需求
  5、快速且简单的实现大批量服务器的程序版本升级,以减少例行维护导致的服务不可用
  6、快速且简单的合并、分散压力以应对频繁的合服、劈服操作
  7、自动化运维实现的方便性

  “国内运营商中,网易在运维方面算是做的最好的!从宕机到重启,只要十几分钟的时间。”谈到实际案例,曹世军感慨万分。庞大的服务器集群以及庞大的数据流量的可持续运转,从网络运维角度来说都是非常令人头疼的事。网易能有如此快速的运维响应,也是曹世军以后的目标。

  为了实现运维的需求,就需要把需求分拆,用单独的需求完善底层结构。其中帐号数据中心、游戏服务器组、游戏辅助服务器组、官方网站及论坛、游戏服务器操作系统就是重中之重。

  账号数据中心

  对于账号数据中心的理解,分为以下几方面:
  存储游戏客户的帐号密码、点卡信息、充值记录、密码保护等重要信息
  目前一般都是多款游戏产品共用一个数据中心,所有游戏产品的登录验证都在帐号数据中心进行,充值金额也可以在多款游戏产品中使用。
  一般部署在可靠性较高的多线机房
  爆发性访问比较常见, 日常负载不高
  游戏企业的命脉,安全要求最大化

  游戏服务器组

  而游戏服务器组的运维,则是:
  以组分布,各组之间架构一致,便于横向扩展及管理,所有的游戏运算都在此进行。
  一般由接入服务器、逻辑运算服务器、游戏数据库、日志服务器和其他特殊服务器构成。
  对网络延时非常敏感,一般采用分布式部署,让服务器就近某一地区的客户,最大化减小客户端到服务器的网络延时。
  分布式部署也解决了南北互联的问题。

  游戏辅助服务器

  对于游戏辅助服务器,曹世军讲解比较深刻:
  下载服务器
  – 提供游戏客户端,客户端补丁升级包的下载
  – 对网络的延时不敏感,爆发性流量较大
  – 联通,电信分开部署

  自动更新服务器
  – 提供游戏客户端的自动升级
  – 对网络的延时不敏感,爆发性流量较大
  – 联通,电信分开部署

  官方网站及论坛

  对于网站和论坛所要的需求,曹世军讲解道:
  官方网站包含企业网站、游戏产品网站、帐号管理中心。
  企业网站一般都是用作企业形象宣传。
  游戏产品网站及对应的论坛一般都是针对某一款游戏产品做宣传。
  帐号管理中心提供各个游戏产品用户的帐号注册、秘保设定、密码找回等。
  该类应用在游戏停机维护期间突发流量大。

  游戏服务器操作系统

  在谈到游戏服务器操作系统时,曹世军的感想比较深刻,举得例子大多都是自己亲身体会的事。

  现实世界的实际情况
  – 幸福的人都是相同的, 不幸的人各有各的不幸没错,最好就是用Linux!
  – 和其他Unix like 相比人才更好找
  – 和其他Unix like 相比驱动程序更好找
  – 和windows 相比更灵活,考虑下在Windows 上自动化运维的代价。

  可以的话用64 位吧
  实在不行的话Windows 也不是不可以
  我们是自己定制的Debian X86_64 无盘系统

  通过曹世军精彩的演讲,我们了解到目前网络游戏运维中所要面临的问题,以及网络游戏架构是如何根据实际需求而改变。所谓随需求而改变业务,随需求改变架构模式,大体上相当如此。对于网络游戏监控的具体措施,我们将在随后得到报道中为您展示。

0
相关文章