认识FMS结构
服务器和Flash客户端应用程序之间使用实时消息协议(RTMP)建立的持续连接进行通信.一个典型的情况是,一个Web服务器(注意Web服务器和FMS服务器之间的区别)使用HTTP把Flash客户端传播给Flash Player.然后Flash客户端使用RTMP建立一个到Flash Media Server的持续连接,允许一个不间断的数据流在客户端和服务器之间流动.
多个用户(Flash 客户端)可以连接到Flash Media Server上的同一个应用程序,它充当了连接的用户之间的通讯信道.
关于流和共享对象
传统意义的客户机-服务器应用中,服务器通常被用来执行某种事务;客户端发送一个请求,服务器执行数据库查询或者基于资源的计算,然后把结果返回到客户端.客户端和服务器之间的连接仅仅维持到这个事务完成.
虽然你可以使用Flash Media Server执行事务,但是它的核心用途是处理交互--协调多个连接用户或客户端的动作,传输服务器端数据.Flash Media Server提供两种通讯模型来简化处理用户交互的过程:流和共享对象.
认识流
流(Streams)是基于时间的音频,视频,数据消息同步的流(flow).它从客户端流向服务器或者从服务器流向客户端.Streams采用发布和订阅模型以简化使用streams的应用程序的开发.一个发布的stream可以实时播放(比如视频聊天室),或者录制下来以后播放.
记录下来的streams以FLV(Flash Video)的格式保存.录制的streams可以包含数据消息,就像视频那样.也可以使用第3方视频编码工具利用已有的数据视频或音频制作FLV文件,比如On2或Sorenson Squeeze或者从Flash里导出它们.这种情况下就可以利用Flash Media Server流动预先保存好的内容.
实时流
回放已经录制成FLV文件的流.
认识共享对象
在创建媒体应用程序是你可以两种基本类型的共享对象:本地的和远程的.
你可以把本地共享对象当作"Flash cookies":可以把数据保存到用户计算机里供离线访问,或者保存偏好.本地共享对象是Flash Player的功能,不需要Flash Media Server支持.
Flash Media Server管理远程共享对象,并提供消息,数据同步和数据存储服务.Flash客户端连接到或者订阅一个远程共享对象,每当那个共享对象发生改变时都会收到一个更新通知.同样,消息可以发送给所有连接到远程共享对象的客户端.一个远程共享对象可以只是在会话间维持或者是临时存在.
共享对象为客户端提供数据存储和同步服务