問征夫以前路
          感謝所有關(guān)心過支持過我的人, 感謝所有恨過我嘲笑過我的人 !
          posts - 30,comments - 147,trackbacks - 0

            好久沒寫了,換工作之后,在這家游戲公司,最先了解到的就是red5,學(xué)習(xí)到了如何搭建red5應(yīng)用程序,貼出來分享一下。(本來上周就可以貼出來的,工作太忙了,^ _ ^)

            安裝完red5,在默認(rèn)的情況下,red5將所有的應(yīng)用程序存放在根目錄的“webapp”目錄下面。因此在創(chuàng)建一個(gè)新的應(yīng)用程序之前,首先需要在這個(gè)目錄中創(chuàng)建一個(gè)子目錄。習(xí)慣上這個(gè)子目錄的名字應(yīng)該和馬上創(chuàng)建的應(yīng)用程序的名字是一樣的。

             在red5的安裝目錄(\doc\templates\ )下找到myapp文件夾,把它整個(gè)拷貝到red5安裝目錄的webapps文件夾下,然后重命名為“tempapp”(可根據(jù)自己的需要自己改名)。這個(gè)文件夾中包含的是一個(gè)red5端應(yīng)用程序配置的模板,對(duì)這個(gè)模板進(jìn)行簡單的修改,就可以將我們編寫的應(yīng)用程序正常的運(yùn)行在red5服務(wù)器上。具體修改方法如下:
               1、修改pet\WEB-INF下的四個(gè)文件,只要看到“myapp”就將其替換成“tempapp”。

                  2、修改red5-web.properties文件中的webapp.virtualHosts為*,localhost, 127.0.0.1。
          代碼如下:

          1webapp.contextPath=/tempapp
          2webapp.virtualHosts=*,localhost, 127.0.0.1

                  3、修改red5-web.xml中的class="the.path.to.my.Application"為class="org.red5.server.adapter.ApplicationAdapter"。
          代碼如下:
           1<?xml version="1.0" encoding="UTF-8"?>
           2<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
           3<beans>
           4    
           5    <bean id="placeholderConfig" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
           6        <property name="location" value="/WEB-INF/red5-web.properties" />
           7    </bean>
           8    
           9    <bean id="web.context" class="org.red5.server.Context" 
          10        autowire="byType" />
          11    
          12    <bean id="web.scope" class="org.red5.server.WebScope"
          13         init-method="register">
          14        <property name="server" ref="red5.server" />
          15        <property name="parent" ref="global.scope" />
          16        <property name="context" ref="web.context" />
          17        <property name="handler" ref="web.handler" />
          18        <property name="contextPath" value="${webapp.contextPath}" />
          19        <property name="virtualHosts" value="${webapp.virtualHosts}" />
          20    </bean>
          21
          22    <bean id="web.handler" 
          23        class="org.red5.server.adapter.ApplicationAdapter" 
          24        singleton="true" />
          25
          26</beans>
          27

                  4、web.xml文件中的代碼也貼出來:
           1<?xml version="1.0" encoding="ISO-8859-1"?>
           2<web-app 
           3   xmlns="http://java.sun.com/xml/ns/j2ee" 
           4   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           5   xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" 
           6   version="2.4"> 
           7
           8    <display-name>My sample Red5 application</display-name>
           9
          10    <context-param>
          11        <param-name>globalScope</param-name>
          12        <param-value>default</param-value>
          13    </context-param>
          14
          15    <context-param>
          16        <param-name>contextConfigLocation</param-name>
          17        <param-value>/WEB-INF/red5-*.xml</param-value>
          18    </context-param>
          19
          20    <context-param>
          21        <param-name>locatorFactorySelector</param-name>
          22        <param-value>red5.xml</param-value>
          23    </context-param>
          24
          25    <context-param>
          26        <param-name>parentContextKey</param-name>
          27        <param-value>default.context</param-value>
          28    </context-param>
          29    
          30    <context-param>
          31        <param-name>log4jConfigLocation</param-name>
          32        <param-value>/WEB-INF/log4j.properties</param-value>
          33    </context-param>
          34    
          35    <context-param>
          36        <param-name>webAppRootKey</param-name>
          37        <param-value>/templates_myapp</param-value>
          38    </context-param>
          39    <!--
          40    <listener>
          41        <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
          42    </listener>
          43    
          44    <listener>
          45        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
          46    </listener>
          47    -->
          48    <!-- remove the following servlet tags if you want to disable remoting for this application -->
          49    <servlet>
          50        <servlet-name>gateway</servlet-name>
          51        <servlet-class>org.red5.server.net.servlet.AMFGatewayServlet</servlet-class>
          52    </servlet>
          53    
          54    <servlet-mapping>
          55        <servlet-name>gateway</servlet-name>
          56        <url-pattern>/gateway</url-pattern>
          57    </servlet-mapping>
          58
          59    <security-constraint>
          60        <web-resource-collection>
          61            <web-resource-name>Forbidden</web-resource-name>
          62            <url-pattern>/streams/*</url-pattern>
          63        </web-resource-collection>
          64        <auth-constraint/>
          65    </security-constraint>
          66
          67</web-app>
          68

                  注意:我用的是Red5-0.8.0-RC2,在啟動(dòng)red5時(shí),會(huì)報(bào)錯(cuò),注釋其中的兩個(gè)監(jiān)聽就沒有問題了!本人做的是java,只提供red5服務(wù)器端的代碼,呵呵,因?yàn)閒lex不會(huì),所以有興趣的朋友請(qǐng)參照:
          http://seasontop.blog.hexun.com/28885448_d.html
          這樣一個(gè)red5服務(wù)器就算配置完了,祝你們好運(yùn)~!
          posted on 2009-05-22 18:46 kenzhang 閱讀(5737) 評(píng)論(5)  編輯  收藏

          FeedBack:
          # re: 搭建red5應(yīng)用服務(wù)器
          2009-06-09 21:07 | sesontop
          呵呵~~還是第一次在別人BLOG上看到自己BLOG的地址哦~~~  回復(fù)  更多評(píng)論
            
          # re: 搭建red5應(yīng)用服務(wù)器
          2009-06-12 18:54 | kenzhang
          @sesontop
          你對(duì)red5的研究很深啊,有機(jī)會(huì)一起研究下
          zhanghhui@126.com我的郵箱  回復(fù)  更多評(píng)論
            
          # re: 搭建red5應(yīng)用服務(wù)器
          2009-06-14 10:16 | conjs.cn
          1,singleton="true" 去掉
          2,extends ApplicationAdapter 改為 MultiThreadedApplicationAdapter

          這樣性能會(huì)提升很多, 你自己可以測(cè)試一下.(大并發(fā)測(cè)試)  回復(fù)  更多評(píng)論
            
          # re: 搭建red5應(yīng)用服務(wù)器 --搭建視頻會(huì)議系統(tǒng)
          2011-10-29 19:10 | 視頻會(huì)議軟件
          專業(yè)采用Red5搭建視頻會(huì)議系統(tǒng)  回復(fù)  更多評(píng)論
            
          # re: 搭建red5應(yīng)用服務(wù)器
          2013-05-27 15:18 | eddie
          回復(fù)一個(gè) 因?yàn)楦懔税胩? 是看你這個(gè)才弄好的  回復(fù)  更多評(píng)論
            

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 阳春市| 宁海县| 加查县| 金坛市| 淮北市| 鸡西市| 商都县| 灵丘县| 沙坪坝区| 宝山区| 南京市| 门源| 山东省| 达州市| 津南区| 明溪县| 麦盖提县| 城步| 临潭县| 玉树县| 永州市| 定安县| 罗定市| 涟水县| 乌什县| 云龙县| 防城港市| 临桂县| 新晃| 利川市| 衢州市| 古蔺县| 吉林省| 佛山市| 双江| 固安县| 云梦县| 石阡县| 渭南市| 盐山县| 朝阳市|