在线游戏平台,通过浏览器直接玩大型3D游戏,无需安装任何客户端。
它的原理是,将游戏的运行计算放到服务器端,获得游戏的媒体流,通过流媒体以电影的形式在客户端播放,客户端将用户的控制指令发送到服务器端,由服务器计算执行。
它最终将成为一个开放式多媒体互动平台,包括SNS,电子竞技互动,视频互动等。
google全球有超过20W台server,参照google的server配置,如果我们以10台server为单位,组建无盘工作站集群,我们一台server的成本最多是他们的一半
目前全球可搜索到的有2家公司在做这个在线游戏平台,他们已经差不多做好了,处在内部测试阶段,并有视频,根据他们的测试结果,只需要1.5m的带宽,就可以很流畅的玩普通画质游戏,高清画质也只需要4-5m的带宽,而未来5年,国内将普及光纤入户。
在线应用平台包含3个部分:
- 客户端浏览器
- web服务器
- 应用平台服务器
客户端浏览器
基于浏览器的应用客户端,也是媒体流接收端,用于向服务器发送应用请求,获得媒体流请求ID,向媒体服务器发送请求,获得相应的媒体流。
WEB服务器
将客户端对应用的请求转发至应用平台服务器,获得媒体流ID,发送给客户端,并用session控制其声明周期
应用平台服务器
应用平台服务器是一个服务器群,包含三个部分:控制器群组,应用服务器群组,媒体流服务器群组,以一个游戏服务平台为例子:
控制器服务器群组
接收游戏实例的请求,对游戏实例和流媒体的生命周期进行管理。
游戏服务器群组
提供游戏实例
媒体流服务器群组
响应客户端的媒体流请求
以魔兽世界为例,流程图如下:
- 浏览器向网站服务器发送要玩魔兽世界的请求,网站服务器生成session,并做一些必要的记录;
- 网站服务器向游戏控制器发送魔兽世界的请求
- 游戏控制器从媒体流服务器群组中找到最合适的服务资源,生成一个唯一媒体流请求ID,并将这个ID与魔兽世界绑定
- 游戏控制器将ID返回给网站服务器
- 客户端从网站服务器得到媒体流请求ID
- 客户端跳转到视频播放页面,将媒体流请求ID发送至媒体流服务器
- 媒体流服务器接收到请求ID后,将该ID发送给游戏控制器
- 游戏控制器根据请求ID,在游戏服务器群组中找到最合适的计算资源,并创建魔兽世界实例
- 游戏服务器将游戏实例产生的媒体流直接从显卡获得并发送给媒体流服务器
- 客户端获得媒体流服务器发来的媒体数据
第一阶段测试计划
游戏服务器端测试方案:
1,运行一个很小的游戏,将它的视频和音频写成文件,保证它可以播放
2,将视频和音频以流的形式发送给媒体server,通过网页以电影的形式播放
3,在浏览器端加入控制功能,最后实现通过网页玩那个小游戏
媒体服务器端测试方案:
1,搭建媒体服务器,创建媒体播放页面
2,将一个媒体文件放入指定目录,并可以播放它
3,写一段测试代码,将媒体文件以流的形式读取,并写入到媒体服务器中,使它能够被播放
本阶段为技术测试阶段,为整个项目打开一个入口点
posted on 2009-08-01 16:59
Phrancol Yang 阅读(883)
评论(0) 编辑 收藏