IT业界提出了应用网格技术解决游戏资源的理论,也就是最新的Optimal Grid技术
眼下网络游戏市场的火爆是有目共睹的,但其高增长的潜力还有待检验,特别是在竞争者蜂拥而至的情况下。网络游戏运营商目前关注的焦点是继续投入大把资金扩充设备,还是在现有资源上做文章……
“格子间”的诱惑
当前国内网络游戏产业的发展如火如荼,新的游戏、游戏运营商仿佛新车下线一样,层出不穷。在感叹网络游戏市场发展的同时,作为媒体,不如少一些随声附和,多一些居安思危。年初广电部、文化部都曾下文,意在致力规范网络游戏节目、网吧的经营。就在政府严格控制网络游戏发展的同时,游戏运营商并没有流露足够的耐心,新游戏越来越多,设备购买也不惜代价……但玩家的眼球总是有限的,而且还有减少的迹象,可吃饼的人却越来越多
在此我们不想危言耸听,回忆一下2003年车市泡沫的时候,当时谁会反对扩张?谁会反对大把花钱
在网络游戏处在风口浪尖的时候,大笔的投入购买设备并非最佳选择,因为谁也不能预测游戏市场的高增长能持续多久。但是,一些眼前的问题也不能置之不理,毕竟服务器资源不足造成响应速度缓慢,势必打击玩家的耐心,甚至导致玩家投奔别的游戏
为此,在IT业界提出了应用网格技术解决游戏资源的理论,也就是最新的Optimal Grid技术。
网格本身并不是新东西,早先由IBM公司挑头,各家主流IT厂商参与其中,共同组织和制定了Open Grid Service Architecture架构,目的就是为了解决在用户的分布式环境中,整合利用异构的资源。比如,一个用户可能拥有各种各样的服务器甚至是大型机,包括了Windows、Unix、Linux等各种系统,而这些服务器可能分布在不同的地方,这时候就可以利用网格进行资源整合利用。
虽然网格技术可以解决异构的环境,但是在一个游戏的运作环境中,绝大多数的网络服务器都是同一个标准的环境。与一般企业应用不同的是,对于一个游戏运营商,可能存在上千台或者更多的服务器,这时候网格所要解决的主要问题就是,如何把这些服务器整合为一个统一的资源,而不是分散的系统。
举例来说,有两个游戏在运行,传统上使用1500台服务器为第一个游戏服务,再用1500台服务器为第二个游戏来服务,最后用其他的服务器来做管理、Call Center等。要是应用了网格技术,就可以把这些服务器全部整合到一起,当一个玩家在玩某一个游戏的时候,根本无须关心所访问的资源在原来的1500台服务器上还是在另外1500台服务器上。
那么在网格前为什么还要加一个Optimal,这就牵扯到对原有技术的优化问题。因为网格仅仅做到了把资源进行整合,至于对资源的优化利用,还需要一套管理系统来实现。这里以IBM公司的自主运算管理器Automatical Program Manager(APM)为例,通过它来说明Optimal Grid技术如何实现对网络游戏运营商的网络、服务器访问的控制,同时自动进行资源的配置。
以《石器时代》这款热门的网络游戏为例,它的大本营地图访问量一直很高,这时APM就可以把网格中其他闲置的服务器资源调过来使用,实现系统的配置和优化。再比如,《石器时代》下面有很多个游戏群组,每个群组包括了8~10台服务器,那么某个群组中某一台服务器出了问题的时候,APM保证游戏的运行状态不会受影响,它会调动这个组中其他的服务器接管,这就是所谓的自我愈合。
所以说,Optimal Grid主要是帮助网络游戏运营商实现动态的负载均衡。现在的很多游戏在运行的时候,一组服务器一旦出现资源不够,运营商首先想到的是增加新的服务器。这种做法不一定划算,因为增加的成本有可能被游戏的峰值所消耗,其余时候这些资源就被浪费了。通过Optimal Grid,可以在游戏运行中自动移动在线玩家,特别是在有多个游戏同时运行的时候
当一个玩家登录到某个游戏的时候,可能会出现该游戏服务器组访问过热的情况。同时,另一个游戏的服务器可能会处于闲置状态,这时Optimal Grid就可以把闲置的服务器资源拿给第一个游戏使用,提高利用率
“一”到“多”的革命
对于网络游戏的开发商来讲,通过应用Optimal Grid技术,可以从一开始就对游戏引擎的结构做出优化的选择。
比如,《传奇》的开发商拥有一系列很大的游戏地图,大多是8公里乘8公里的范围。传统的做法是把地图切分成很小很小的块,然后把地图分别存放在不同的服务器上面,然后在服务器和服务器中进行通信。如果某个用户登陆到第一个服务器去访问a地图,那么当要访问b地图的时候,就要从内部的通信程序注册到第二个服务器,然后访问。但是如果采用Optimal Grid技术,开发商可以自由动态分割整个的地图,对于玩家来说,这就是一个整个的8公里乘8公里的地图,没有传统上切换地图时的停顿感觉
同时,对于游戏玩家和游戏世界中所有对象,包括人物、场景、道具,都可以在不同的服务器之间进行平滑的移动。对于游戏开发商,这不会增加任何难度,因为Optimal Grid相当于一个中间件平台,具有很多开放的API和大量的工具,可以很快地实现从单一途径的游戏引擎架构,变成多服务器游戏引擎的转换。同时,可以把原先游戏的逻辑进行保存,而不需要对逻辑进行改变
这听起来有些不可思议,但其实Optimal Grid技术的基本原理,还是基于原来网格的单元切分模型,它把所使用到的资源,比如地图与服务器,去切分成尽可能小的资源单元。比如一张8公里乘8公里的地图,可以切分成200万个结构单元,一个单元对于游戏逻辑来说,是一个不可再切分的单元格,那么这个单元格就可以代表在这个地图上的最小标志
每一个单元格都是一个地图上的最小特性,称为Original Program Cell(OPC),它包括了自己的数据信息和特性,包括与其他单元格之间的通信方法,以及位于其他服务器上的单元格之间的通信联系。这些小的单元格形成为一个OPC Collection单元格的子集,再由这个子集形成一些分区,再把这些分区和子集放到游戏运行的服务器上去
这种放置是一种动态的,而不是说子集放在第一个服务器就永远放在第一个服务器了,将来有可能根据用户对于服务器的访问和网络的流量,和所在的服务器受访问的热门程度,去动态的调控OPC子集所在的位置。像IBM公司的APM可以控制子集之间的边界,从而实现资源分配和整合。当玩家从本张地图的某一块,走到另外一张地图的某一块,那么这个OPC子集和另外一个OPC子集就融合在一起,从而地图可以实现自动平滑移动过渡
向“池子”里灌水
网络游戏运营商和开发商采用Optimal Grid技术,可以做到游戏的动态资源调配,节省了一部分运营成本。但是,随着近几年游戏引擎技术的突破,越来越多的3D游戏、FPS游戏在吸引玩家眼球的同时,也在疯狂侵吞着运营商的硬件资源
这就产生了一个瓶颈:当某一款RPG游戏资源不足的时候,Optimal Grid可以为其分配服务器资源,但是这种资源可能是一组高性能服务器,同时也许另一款3D射击游戏也出现了资源不足,但Optimal Grid只能把余下的资源进行动态调配,却不能保证分配给3D游戏的是高性能服务器。
这种瓶颈几年以来越发突出,为此IT业界提出了“资源池”的模型,即Utility Computing技术。Utility Computing的核心是指,利用运营商的现有资源,最大限度地节约成本,把不同的游戏应用程序、服务器整合起来,形成一个统一的资源池,提供所有的游戏使用。
在此,我们不妨看看盛大网络的例子。在盛大,以往每一款网络游戏都有一组服务器做支撑,包括后台的一套Open View网络管理和游戏客户关系管理系统。在经过Utility Computing资源动态调配后,盛大网络可以实现,无论有多少新游戏上线,都可以通过灵活的后台基础架构,统一整合调用公司的所有服务器资源,包括后台客户支持的资源。
对盛大网络来说,不同游戏对于服务器要求不同,Utility Computing支持运营商根据不同要求去定义不同的服务等级(Services Level Agreement)。这就是说,当盛大提供一般的RPG游戏服务,比如《传奇》,就可以调用低性能的服务器资源;而当公司上线一些3D类游戏的时候,就可以自动调用后台的高性能资源。
另外,如果盛大网络觉得现有服务器还是不够用,那么它可以往内部增加新的服务器。与以往不同的是,现在新加一台服务器不是为了某一款游戏来使用的,而是为了所有的游戏、服务来使用的。
目前,IBM公司已经根据Utility Computing技术开发了Tivoli Intelligent Architecture(TIO)软件,可以从一个全局的范围内,去控制和调用所拥有的资源池
Money的蹊径
大市走高容易令人迷惑,对于网络游戏运营商来讲,除了卖点卡的收入,玩家之间的交易极有可能成为今后运营商利润的增长点。
据统计,2003年国内的虚拟交易额已经达到了16亿元人民币,这主要是游戏玩家和玩家之间的在线交易,而且这种交易有大量增长的势头。但是对于大部分的游戏运营商和开发商,却没有一个很好的中间件平台,去把游戏本身的内容和逻辑与电子商务的平台整合到一起
对于这一块业务,IT厂商提出,可以通过纯Java的中间件平台,实现对于游戏所有的店面的管理、用户的管理、订单的管理、交易的管理。这种实现全部通过中间件来做,而不是通过游戏的底层逻辑。
因为对于游戏的开发商,他们关心的是内容能否吸引人,逻辑是否合理,与上层交易有关的内容可以完全抛开,中间件可以把上面的游戏结构与下面的WebServer整合到一起。所以游戏开发者不用对原来游戏的内容和逻辑进行任何的改变,就可以很快的把电子交易的功能加到上面去。而游戏运营商也可以通过中间件模式,进行收取费用,玩家也不用单独购买点卡了。特别是在游戏的里面,也可以形成电子交易。
除了在线交易,VoIP技术也已经成为了推动运营商服务提升的标志,而且非常划算。因为大规模的游戏,一般是基于SIP(Session)技术。与电话会议不同的是,电话会议有很多人开会,对于音频或者通信的质量要求非常高。而在游戏中,玩家所要获得是,在某一个时刻、某一个需要的时候,可以找到同一组的玩家进行交流。而这种交流并不一定是连续的、长时间的在线交流,而是类似对讲机的通信。
游戏运营商如果通过VoIP提供语音通信,可以大大节省玩家的成本和时间,从而提高玩家玩游戏的效率。在国外,一般此类软件包可以嵌入到服务器端和客户端,对于客户端可以实现玩家与玩家点对点通信、玩家与客户中心的通信。当玩家玩游戏的时候,遇到问题了,比如掉线了、服务器堵塞过不去了,甚至是技术问题都可以得到快速解决。
另外,游戏运营商通过采用上述这些新兴技术,可以在架构上对于自己的基础设施进行优化,从而可以应用成本更低的刀片中心方案解决资源的扩充问题。对游戏运营商来说,采用比较完整的中间件架构、刀片中心模式,可以使得游戏的运营、开发成本降低30~50%,而可靠性也会提升一倍。
未来网络游戏产业技术发展趋势(转载)
最新推荐文章于 2023-04-20 12:11:28 发布