`
blueram
  • 浏览: 762781 次
  • 性别: Icon_minigender_1
  • 来自: 郑州
社区版块
存档分类
最新评论

red5内嵌tomcat启用apr和gzip

 
阅读更多

最近看到tomcat 的优化,发现使用如果使用apr可以提供tomcat的静态资源访问能力,于是就试了试。tomcat很好实现,网上很多资料。但是red5由于是嵌入的tomcat,没有server.xml, 所有一时没有找到如何解决。查看tomcat源码,发现tomcat检测apr是否可用使用在server.xml的

 

<Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />

 

 再看看red5里面的tomcat配置文件jee-container.xml,没有发现可以配置的地方。于是作出如下修改。

 

	<bean id="AprLifecycleListener" class="org.apache.catalina.core.AprLifecycleListener" init-method="init" lazy-init="false"></bean>
        <!--spring容器启动,检测apr环境,类似上面的listener-->
	
	<bean id="tomcat.server" class="org.red5.server.tomcat.TomcatLoader" init-method="init" destroy-method="shutdown" depends-on="context.loader">

		<property name="webappFolder" value="${red5.root}/webapps" />
			      
	    <property name="connector">
			<bean class="org.apache.catalina.connector.Connector">
				<!-- Blocking I/O 
				<constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11Protocol" />-->
				<!-- Non-blocking I/O -->
				<!--
				<constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11NioProtocol" />	
				-->
				<!-- apr I/O -->
				
				<constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11AprProtocol" />	
				
                <property name="port"><value>${http.port}</value></property>
		        <property name="redirectPort"><value>${https.port}</value></property>
                <property name="enableLookups"><value>false</value></property>
                <property name="useIPVHosts"><value>true</value></property>
                <property name="URIEncoding"><value>${http.URIEncoding}</value></property>
			</bean>
	    </property>
			    	
        <property name="address">
            <bean class="java.net.InetSocketAddress">
                <constructor-arg index="0" type="java.lang.String" value="${http.host}" />  
                <constructor-arg index="1" type="int" value="${http.port}" />  
            </bean>	
        </property>
	    	
        <property name="baseHost">
	       <bean class="org.apache.catalina.core.StandardHost">
	           <property name="name" value="${http.host}" />
	           <property name="unpackWARs" value="true" />
	           <property name="autoDeploy" value="true" />
	           <property name="xmlValidation" value="false" />
	           <property name="xmlNamespaceAware" value="false" />
	       </bean>	   
	    </property>		

		<property name="valves">
      		<list>
	    		<bean id="valve.access" class="org.apache.catalina.valves.AccessLogValve">
	                <property name="directory" value="log" />
	                <property name="prefix" value="${http.host}_access." />
	                <property name="suffix" value=".log" />
	                <property name="pattern" value="common" />
	                <property name="resolveHosts" value="false" />
	                <property name="rotatable" value="true" />
	        	</bean>
        	</list>
        </property>
	    
	</bean>

 启动信息

   

 

另外我想再启用gzip,但是没有找到配置的地方,哪位高人能指点下

2012年7月19日补充 开启gzip已经实现

直接上配置文件,浅红色为配置信息

<bean id="AprLifecycleListener" class="org.apache.catalina.core.AprLifecycleListener" init-method="init" lazy-init="false"></bean>

	
	<bean id="tomcat.server" class="org.red5.server.tomcat.TomcatLoader" init-method="init" destroy-method="shutdown" depends-on="context.loader">

		<property name="webappFolder" value="${red5.root}/webapps" />
			      
	    <property name="connector">
			<bean class="org.apache.catalina.connector.Connector">
				<!-- Blocking I/O 
				<constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11Protocol" />-->
				<!-- Non-blocking I/O -->
				<!--
				<constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11NioProtocol" />	
				-->
				<!-- apr I/O -->
				
				<constructor-arg type="java.lang.String" value="org.apache.coyote.http11.Http11AprProtocol" />	
				
                <property name="port"><value>${http.port}</value></property>
		        <property name="redirectPort"><value>${https.port}</value></property>
                <property name="enableLookups"><value>false</value></property>
                <property name="useIPVHosts"><value>true</value></property>
                <property name="URIEncoding"><value>${http.URIEncoding}</value></property>
				
			</bean>
	    </property>
		
		<property name="connectionProperties">
			<map>
				<entry><key><value>maxThreads</value></key><value>150</value></entry>
				<entry><key><value>minSpareThreads</value></key><value>25</value></entry>
				<entry><key><value>maxSpareThreads</value></key><value>75</value></entry>
				<entry><key><value>acceptCount</value></key><value>100</value></entry>
				<entry><key><value>disableUploadTimeout</value></key><value>true</value></entry>
				<entry><key><value>compression</value></key><value>on</value></entry>
				<entry><key><value>compressionMinSize</value></key><value>2048</value></entry>
				<entry><key><value>noCompressionUserAgents</value></key><value>gozilla, traviata</value></entry>
				<entry><key><value>compressableMimeType</value></key><value>text/html,text/xml,text/javascript,text/css,text/plain</value></entry>
			</map>
			
		</property>	
		
        <property name="address">
            <bean class="java.net.InetSocketAddress">
                <constructor-arg index="0" type="java.lang.String" value="${http.host}" />  
                <constructor-arg index="1" type="int" value="${http.port}" />  
            </bean>	
        </property>
	    	
        <property name="baseHost">
	       <bean class="org.apache.catalina.core.StandardHost">
	           <property name="name" value="${http.host}" />
	           <property name="unpackWARs" value="true" />
	           <property name="autoDeploy" value="true" />
	           <property name="xmlValidation" value="false" />
	           <property name="xmlNamespaceAware" value="false" />
	       </bean>	   
	    </property>		

		<property name="valves">
      		<list>
	    		<bean id="valve.access" class="org.apache.catalina.valves.AccessLogValve">
	                <property name="directory" value="log" />
	                <property name="prefix" value="${http.host}_access." />
	                <property name="suffix" value=".log" />
	                <property name="pattern" value="common" />
	                <property name="resolveHosts" value="false" />
	                <property name="rotatable" value="true" />
	        	</bean>
        	</list>
        </property>
	    
</bean>
 

 

  • 大小: 183.9 KB
分享到:
评论

相关推荐

    red5 与 tomcat项目集成

    例如,`red5-common.xml` 中的 JMX(Java Management Extensions)配置可能需要根据实际需求或安全策略来决定是否启用。在这个例子中,JMX 服务器的相关配置(`jmxFactory` 和 `jmxAgent`)被注释掉,因为它们可能...

    将red5集成到Tomcat服务器中

    将Red5集成到Tomcat服务器是一项常见的操作,用于在同一个服务器上部署Red5服务和其它Web应用程序。Red5是一款开源的Flash流媒体服务器,而Tomcat是Apache软件基金会的Java Servlet容器,主要用于运行Java Web应用。...

    Tomcat安裝APR指南

    本指南旨在提供在Red Hat Enterprise Linux 5.5+系统上为Tomcat安装Apache Portable Runtime (APR)的详细步骤。APR是Apache HTTP服务器项目的基石,它提供了操作系统级别的接口,使得Tomcat能够更好地利用系统资源,...

    red5 与TOMCAT整合 (英文)

    - 通常,RED5被部署为一个独立的Java应用,内嵌有J2EE容器如Jetty或TOMCAT,并作为系统服务运行。 - 而RED5的WAR版本则可以在TOMCAT这样的J2EE容器内部运行,这种部署方式提供了更多的灵活性和集成性。 #### 3. *...

    Red5-1.0-RC1集成到tomcat详细步骤

    在IT行业中,将Red5-1.0-RC1集成到Tomcat服务器是一个常见的操作,主要目的是为了利用Red5的实时流媒体服务功能,结合Tomcat的稳定性和广泛支持,搭建一个高效、可靠的流媒体发布和播放平台。下面将详细阐述这个过程...

    red5入门,tomcat+red5+myeclipse集成,原创禁止转载

    本教程将介绍如何进行Red5的入门学习,并结合Tomcat和MyEclipse进行集成开发。 一、Red5简介 Red5是一款用Java编写的应用服务器,它能够处理音频、视频流,并且支持Flash Player和Adobe AIR。Red5的主要功能包括...

    red5 1.0.7整合tomcat6+maven+oflaDemos

    标题中的"red5 1.0.7整合tomcat6+maven+oflaDemos"涉及到的是一个关于搭建和配置Red5服务器的教程,其中包含了使用Maven构建工具以及OFLA Demos的实践。Red5是一个开源的流媒体服务器,能够处理音频、视频、数据和...

    tomcat整合red5

    - 在部署Red5之前,建议先熟悉基本的Java和Tomcat知识。 #### 七、Red5的优势 - **高度可定制性**: 用户可以根据自己的需求定制功能模块。 - **丰富的API**: 提供了强大的API支持,方便开发者进行二次开发。 - **...

    Flex+Red5+Tomcat视频语音录制、播放

    Flex+Red5+Tomcat是一个常见的技术组合,用于构建实时的、交互式的视频和音频应用。这个组合将Adobe Flex作为前端开发工具,Red5作为流媒体服务器,而Tomcat则作为应用服务器。以下是对这个技术栈各个部分的详细解释...

    Red5集成到Tomcat

    Red5集成到Tomcat demo 文档说明

    red5部署到tomcat需要的jar包

    在将Red5流媒体服务器部署到Tomcat应用服务器时,我们需要了解一些关键的步骤和所需的依赖库。Red5是一款开源的Java实现的流媒体服务器,它支持RTMP、HLS、RTSP等协议,用于实时音频、视频流的发布、播放和录制。而...

    Red5 1.0 Final Web版

    7. **管理**:由于Red5现在被作为Tomcat的一个Web应用,你可以通过Tomcat的管理界面来监控和管理Red5服务,如启动、停止或重新部署。 在导入MyEclipse等集成开发环境中,可以更方便地进行上述步骤,如创建和配置...

    Red5 + MyEclipse +Tomcat配置

    ### Red5 + MyEclipse + Tomcat 配置详解 #### 一、环境搭建与配置概述 本篇文章主要介绍如何在MyEclipse环境下配置Red5服务器,并使其与Tomcat服务器协同工作,最终实现Red5的Demo成功运行。Red5是一款开源的流...

    在eclipse中使用tomcat开发RED5项目

    描述中提到的“NULL”表示没有具体的项目细节,但我们可以通过常规的步骤来阐述如何在Eclipse中配置和使用Tomcat来开发RED5项目。 1. **安装Eclipse与Tomcat**: 首先,确保已经安装了Eclipse IDE,通常选择Java ...

    Red5-1.0-Final集成到tomcat的配置文件和打好的war可直接使用

    将Red5集成到Tomcat可以让用户利用Tomcat的管理和部署优势,同时利用Red5的流媒体功能。 集成步骤如下: 1. **下载Red5**:获取Red5 1.0 Final的源码或预编译的WAR文件。WAR(Web Application Archive)是Java Web...

Global site tag (gtag.js) - Google Analytics