用户名: 密码: 验证码: QQ--程序群:31736530 动画群:38836599
闪无忧
 
首 页 业界新闻 业界杂谈 Flash教程 Flash源码 Flash图书 Flash酷站 Flex & AIR 供求信息
   本栏目通告:   有意向写收费精品教程的朋友,请联系本站合作
当前位置 :首页>flash教程>Fms教程>列表

分布式的Flash Media Server: GridFlash 及其应用实例

[来源: | 作者:changhao | 时间:2008-08-19 | 点击:  | 收藏本文  【 】]
分布式的Flash Media Server: GridFlash 及其应用实例

支持rtmp协议:flash.net.NetConnection,flash.net.NetStream,flash.net.SharedObject

支持amf0 amf3 flv h264

支持链接到不同服务器的flash客户端可以互相查询和通信

支持分布式的NetStream和SharedObject

支持通过连接到一个SharedObject可以监控多个不同服务器中的SharedObject

可以作为插件嵌入到 ie ff zinc

目前还  < 不支持 > 服务器端编程 ( 根据反馈会考虑加入服务器端 lua 编程 )

gridflash 的介绍  http://www.gridflash.com/html/en/overview.ppt


应用实例:(以下例子做的不完善,仅仅为了说明使用GridFlash可以很容易开发分布式flash应用)

注意以下例子使用了  appName="app1"  appPass="app1" 这个应用, 使用了 "idc1" "idc2" 两个命名和一个匿名的gridflashserver

你可以修改以下例子的源码 使用自己创建的应用并链接到自己部署的gridflashserver



【一】  用flex做的 多服务器 im 及 flex源码s
用GridFlash做多个server 客户端可以链接到任何一个server
flex源码          http://www.gridflash.com/file/GFDemoIM.zip
运行:             http://www.gridflash.com/GFDemoIM/GFDemoIM.html
支持 1对1(用flash remoting)  和   多对多(用shared object)
使用步骤:
开两个以上  http://www.gridflash.com/GFDemoIM/GFDemoIM.html
1 用不同的用户名登录 ( 注册 和 登录 的动作差不多 比如你用 user/pass 点击 reg and login 同时完成注册和登录  )
2 选择一个服务器 点击 connect to im server
3 查找别的client(相当于查找好友),比如我用a 登录 查找 b,c
4 左边好友列表里面双击可以1对1聊天
5 new multi session 创建多人会话,只有创建者可以把别的client加进来,多选左边好友,右下角的addToMultiSession添加



【二】 基于SharedObject做的房间列表和房间及flex源码

用GridFlash做多个server 客户端可以链接到任何一个server
flex源码         http://www.gridflash.com/file/GFDemoRoomList.zip
运行:           http://www.gridflash.com/GFDemoRoomList/GFDemoRoomList.html

1 先登录或同时注册登录

2 选择一个服务器 链接

3 双击右边的房间可以打开一个房间(closeRoom关闭房间)

右边有房间列表和房间
     有聊天房间   相当于聊天室
     小球控制房间 双击黄色小球后 用键盘的方向键控制移动

实现说明:
使用monitor sharedobject (name pattern "mul/soname" )表示房间列表

用普通sharedobject  (name pattern "gfs/servername/soname" ) 表示房间

monitor sharedobject可以监控多个不同服务器上普通sharedobject的部分属性
至于监控什么样的属性 通过 属性名字的前缀 告诉 monitor sharedobject  

但是monitor sharedobject属性名字是***@***格式,前面部分表示属性名字,后半部分表示被监控sharedobject的名字
所以sharedobject属性名字中不要使用"@"字符

比如
monitor=SharedObject.getRemote("mul/myroomlist",conn.uri);
监控哪些 sharedobject 可以通过两种方式指定
链接时
monitor.connect(conn,"list=server1%_%chat0%chat1,server2%M%ball0%ball1");
表示要监控 gfs/server1/chat0 和 gfs/server1/chat1中以"_"开头的属性
         gfs/server2/ball0 和 gfs/server2/ball1中以"M"开头的属性
链接后
monitor.send("addSo","home1%_%chat2,home2%M%ball2");




【三】基于SharedObject 3*3数组 做的MMO(大型多人在线) demo 及flex源码
实现思想:
MMO=大型静态场景 + 多人在这个场景中的动态活动
sharedobject相当于许多部署在这个大型场景中的多个传感器

flash客户端维护一个3*3的sharedobject矩阵,随着角色的移动关闭远离的sharedobject,打开靠近的sharedobject
而角色本身始终处于中心位置的sharedobject  注意:不是指so[1][1], 而是由 soi 和 soj动态变化跟踪
除了这9个动态关闭打开的sharedobject外,flash客户端还要有一个roles=new Object(),roles用来保存从这些传感器得到
其他在线用户

so[3][3]  soi,soj表示当前角色所在so
[topLeft]       [top]        [topRight]
[left]          [center]     [right]
[downLeft]      [down]       [downRight]
topLeft:  so[(soi+2)%3][(soj+2)%3]
top:      so[(soi+2)%3][(soj+0)%3]
topRight: so[(soi+2)%3][(soj+1)%3]
left:     so[(soi+0)%3][(soj+2)%3]
center:   so[(soi+0)%3][(soj+0)%3]
right:    so[(soi+0)%3][(soj+1)%3]
downLeft: so[(soi+1)%3][(soj+2)%3]
down:     so[(soi+1)%3][(soj+0)%3]
downRight:so[(soi+1)%3][(soj+1)%3]


用GridFlash做多个server 客户端可以链接到任何一个server
gridflash 的介绍http://www.gridflash.com/html/en/overview.ppt
flex源码         http://www.gridflash.com/file/GFDemoMMO.zip
运行:           http://www.gridflash.com/GFDemoMMO/GFDemoMMO.html


1 先登录或同时注册登录

2 选择一个服务器 链接

3 在有黄色小球的tab面板中,双击面板的白色部分,然后用键盘方向键可以移动小球的位置
  打开多个http://www.gridflash.com/GFDemoMMO/GFDemoMMO.html 用不同的用户登录
  移动到接近的位置就可以看到其他小球
  注意黄色小球始终处于中心位置不动,只能看到相对于其他小球的移动

GridFlash是一个分布式的Flash Media Server
实现MMO可以按如下部署
m个 master服务器  master服务器使用不同的名字  用来分布存放不同的sharedobject
n个 slave 服务器  slave服务器用来做边缘链接服务器服务器
flash可以连接到任意的slave服务器

商业合作可以联系: changhaohao@gmail.com
文章如果有错误或者缺少文件,请发邮件提交给我们
上一篇:基于SharedObject 3*3数组 做的MMO(大型多人在线) demo 及flex源码
下一篇:FMS在线客服系统(分析篇)
Tags:    
>>> 最新评论:(共有 0 位网友发表了评论)      查看所有评论
  发表评论
用户名: 新注册) 密码: 匿名评论
评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
·本站发布内容均为客观表达作者观点,不代表闪无忧立场,请勿攻击和漫骂
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为
  教程分类
  基础操作   动画特效
  应用开发   组件学习
  As程序   动画教程
  Flash cs3   AS 3.0
  FCS/FMS教程   Loading教程
  Flash与Web   Flash教程连载
  相关文章
·FMS在线客服系统(客户端篇)
·FMS在线客服系统(fms脚本)
·FMS在线客服系统(分析篇)
·分布式的Flash Media Server: Gr
·基于SharedObject 3*3数组 做的M
·用flex做的 多服务器 im 及 源码
·基于SharedObject做的房间列表和
·fms 2.0A星寻路
·FMS音频延迟分析
·fms中介函数
  热门文章
·Flash进度条的制作详细讲解(组图)
·flash幻灯片网页效果
·Flex 3 AdvancedDataGrid的使用(第二
·全Flash动画网站实现的基础教学
·flash水影效果字
·Flash打造简单的飘雪动画视觉特效
·FLASH+XML相册(附源码)
·超酷flash光晕移动效果
·Flash旋转拖尾文字效果的制作教程
·Flash制作大雪纷飞效果动画
·flash春雷闪电效果
关于我们 - 免责声明 - 网站地图 - 商务服务 - 联系我们 - RSS地图
©CopyRight 2006-2008, 5UFlash.COM, Inc. All Rights Reserved
鲁ICP备06034971号