Android机视频聊天服务器Red5官方指南(翻译).docVIP

Android机视频聊天服务器Red5官方指南(翻译).doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Android机视频聊天服务器Red5官方指南(翻译)

1 揭开面纱 就好像一辆汽车,Red5服务器能被轻松地使用即使没有任何前期的知识也不知道它内部的实现细节。如果我们对它工作的细节感兴趣的话我们能够通过正确的工具将其分离和测试,让我们打开Red5引擎并且看看到底有些什么。 在这一章中将涵盖如下内容: ● 连接(Connections), 客户端(Clients), 上下文(Contexts), 和域(Scopes) ● 应用程序入口 ● 配置 ● 从零开始构建Red5 连接,客户端,上下文和域 服务器合和我们的应用程序的核心部分就罗列在这里了。独立的上下文和域的知识将让我们为Red5建立激动人心的程序时走得更远。连接和客户端能够达到区分用户之间的不同的目的和实现他们之间的通信。 连接 连接代表两个不同终端之间的通信通道,这通常包含一个Flash Player和Red5。每个连接有一个相关的客户端和域。连接可以是长期的,轮询的或者短暂的。Red5 API中的IConnection接口提供被所有不同连接类型共享的连接方法。当前Red5提供的连接的具体实现如下: ● RTMPConnection,存储客户端的流信息,数据传输通道,等待RPC调用,宽带设置,AMF编码类型(AMF0或者AMF3),连接状态和会话。RTMPTConnection,这个类继承RTMPConnection,当通过HTTP为RTMP建立通道时提供附加的属性。 ● RemotingConnection,代表一个远程的连接。属性存储在实现对话的Servlet容器中。这种类型的连接也用于数据服务DS(Data Services),通信,以及和BlazeDS 或者 LCDS相似的情况。 ● TestConnection,只用于内部的JUnit测试。 在我们的应用程序中通过调用如下代码访问当前正在进行的连接: 这个连接通过一个特殊线程中的局部变量进行恢复,它在Flash Player连接Red5时被设置。 客户端 客户端在绝大多数情况下是连接到我们的Red5应用程序的一个用户的虚拟代表或一个Flash Player。客户端包含在连接中平等提供的属性,一个连接对象中总是只有一个客户端对象。在客户端注册表中的每个上下文中都注册一个客户端,和Red5本身的绝大部分一样,客户端注册表可以被扩展提供自定义的特性或按原样使用。 在我们的应用程序中客户端可以通过如下的代码恢复: 客户端在注册时的注册表引用方便地放置于每个客户端中,除了注册表外客户端还包含了它的创建时间,唯一的id和任何它连接的域。 上下文 Red5大量使用Spring框架,这是一个控制反转(IOC)框架。当我们使用Red5时并不要求我们深入了解控制反转是什么或者它怎样工作,只要知道我们的应用程序的配置和服务器本身大部分情况下均以XML配置文件的方式在执行就足够了。Spring被用于配置Red5服务器本身,我们的应用程序也一样。对Spring框架有较好的掌握将使理解Red5怎样运行和出错时找到问题变得更容易。 Red5中的上下文基本囊括了Spring应用程序上下文,并且提供Red5附加的特殊模块的入口,比如客户端注册表或者其他的服务。它的主要目的是映射上下文路径到请求将被处理的域。这个服务可以使我们绑定我们的应用上下文或者它的父上下文。所有Spring上下文的方法和属性在Red5中都提供,所以当我们管理我们的上下文配置文件中的Hibernate或者其他的帮助库文件时,我们可以通过一个简单的方法调用访问他们。在Red5服务器中,上下文的具体实现是位于org.red5.server包中的Context类。 在Red5中提供两种主要的上下文类型: ● Default类型,默认的上下文和全局应用程序上下文是一样的,以顶级或全局的水平为回应提供对象和资源,在默认的上下文中bean怎样配置取决于部署的类型是单机模式(Standalone)还是网络应用程序模式(WAR)。 ● Web类型,网络上下文定义由Spring配置文件以-web.xml为标注的文件指定,在一个典型的Red5应用程序中上下文配置文件被命名为red5-web.xml。 最后,我们不要混淆了在Tomcat中与Spring一起使用的JEE上下文和Red5上下文,即使他们有许多的相似之处。一个JEE上下文代表一个web应用程序,在Red5中这更类似于一个域(scope)。 域 一个域是连接到相同的上下文路径中的一组客户端之间共享的有状态的对象,类似于Flash Media Server(FMS)中的一个应用程序。域分等级排列,这使一个域拥有一个父域和任何数目的子域成为可能。如果一个客户端连接到一个域那么同时地也连接到它的父域。域对象用于访问资源,共享对象,流等等。一个域当做

文档评论(0)

nus786 + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档