1、http://lamp.linux.gov.cn/Apache/ApacheMenu/misc/perf-tuning.html
2、Tomcat解析JSP文件,静态HTML文件、图片文件、大文件下载使用性能更好的Apache支持
具体实施方案是,将现有Tomcat配置为8080端口,安装Apache服务器,配置为80端口,
在Apache中修改httpd.conf文件
启用proxy_module和proxy_http_module,修改的内容如下:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
然后在Apache的httpd.conf文件中增加如下几行:
ProxyPass /jsp/ http://localhost:8080/
ProxyPassReverse /jsp/ http://localhost:8080/
3、加大tomcat可以使用的内存
Tomcat默认可以使用的内存为128MB,在较大型的应用项目中,这点内存是不够的,需要调大。
Windows下,在文件{
tomcat_home }/bin/catalina.bat,
Unix下,在文件{ tomcat_home
}/bin/catalina.sh的前面,增加如下设置:
JAVA_OPTS='-Xms【初始化内存大小】 -Xmx【可以使用的最大内存】'
需要把这个两个参数值调大。例如:
JAVA_OPTS='-Xms256m -Xmx512m'
表示初始化内存为256MB,可以使用的最大内存为512MB。
一般说来,应该使用物理内存的 80% 作为堆大小。
4、加大tomcat连接数
在tomcat配置文件server.xml中的<Connector ... />配置中,和连接数相关的参数有:
maxThreads Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。
acceptCount 指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。
connectionTimeout 网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为20000毫秒。
minSpareThreads Tomcat初始化时创建的线程数。
maxSpareThreads 一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。
compression="on" 打开压缩功能
compressionMinSize 启用压缩的输出内容大小,这里面默认为2KB
compressableMimeType压缩类型
修改后:
<Connector port="8080" protocol="HTTP/1.1"
maxHttpHeaderSize="8192" useBodyEncodingForURI="true"
maxThreads="1000"
redirectPort="8443"
enableLookups="false"
compression="on"
compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
connectionTimeout="20000"
disableUploadTimeout="true"
/>
5、使用APR使得Tomcat的性能提高
Windows下的安装配置
1)http://tomcat.heanet.ie/native/ 下载编译好的
tcnative-1.dll 文件,也可以下载tomcat-native.zip自己进行编译
2)把tcnative-1.dll文件放在Tomcat的bin目录下.
Tomcat可以使用APR来提供超强的可伸缩性和性能,更好地集成本地服务器技术。APR(Apache Portable Runtime)是一个高可移植库,它是Apache HTTP Server 2.x的核心。APR有很多用途,包括访问高级IO功能(例如sendfile,epoll和OpenSSL),OS级别功能(随机数生成,系统状态等 等),本地进程管理(共享内存,NT管道和UNIX sockets)。这些功能可以使Tomcat作为一个通常的前台WEB服务器,能更好地和其它本地web技术集成,总体上让Java更有效率作为一个高 性能web服务器平台而不是简单作为后台容器。
在产品环境中,特别是直接使用Tomcat做WEB服务器的时候,您应该使用Tomcat Native来提高其性能,详细配置和安装请参考Tomcat文档。
如果没有apr技术,启动tomcat 时出现如下提示:
信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/jdk1.6.0_06/jre/lib/i386/client:/usr/java/jdk1.6.0_06/jre/lib/i386:/usr/java/jdk1.6.0_06/jre/../lib/i386:/usr/java/packages/lib/i386:/lib:/usr/lib
按照官方说明需要:
- APR library
- OpenSSL libraries
openssl 可以用 yum install openssl-devel,apr还是下载*.gz来安装。
apr-1.3.2.tar.gz
apr-util-1.3.2.tar.gz
两个可以在 http://apache.mirror.phpchina.com/apr/ 找到。
tomcat-native.tar.gz 可以在tomcat/bin目录下找到。
安装 apr
- # wget http://apache.mirror.phpchina.com/apr/apr-1.3.2.tar.gz
- # tar zxvf apr-1.3.2.tar.gz
- # cd apr-1.3.2
- # ./configure
- # make
- # make install
- # wget http://apache.mirror.phpchina.com/apr/apr-1.3.2.tar.gz
- # tar zxvf apr-1.3.2.tar.gz
- # cd apr-1.3.2
- # ./configure
- # make
- # make install
apr 默认安装在 /usr/local/apr
安装 apr-util
- # wget http://apache.mirror.phpchina.com/apr/apr-util-1.3.2.tar.gz
- # tar zxvf apr-util-1.3.2.tar.gz
- # cd apr-util-1.3.2
- # ./configure --with-apr=/usr/local/apr
- # make
- # make install
- # wget http://apache.mirror.phpchina.com/apr/apr-util-1.3.2.tar.gz
- # tar zxvf apr-util-1.3.2.tar.gz
- # cd apr-util-1.3.2
- # ./configure --with-apr=/usr/local/apr
- # make
- # make install
安装 tomcat-native
- # cd /usr/local/tomcat-6.0.18/bin
- # tar zxvf tomcat-native.tar.gz
- # cd tomcat-native-1.1.14-src/jni/native
- # ./configure --with-apr=/usr/local/apr --with-java-home=/usr/java/jdk1.6.0_11
- # make
- # make install
- # cd /usr/local/tomcat-6.0.18/bin
- # tar zxvf tomcat-native.tar.gz
- # cd tomcat-native-1.1.14-src/jni/native
- # ./configure --with-apr=/usr/local/apr --with-java-home=/usr/java/jdk1.6.0_11
- # make
- # make install
设置 apr 的环境变量:
- # vi /etc/profile
- // 后面添加以下内容
- export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
- //使profile生效,
- # source /etc/profile
- # vi /etc/profile
- // 后面添加以下内容
- export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
- //使profile生效,
- # source /etc/profile
启动 tomcat 后, 看日志:
- # bin/startup.sh
- # head logs/catalina.out
-
- // 可以看到以下结果:
- 信息: Loaded APR based Apache Tomcat Native library 1.1.14.
- 2009-1-13 11:12:51 org.apache.catalina.core.AprLifecycleListener init
- 信息: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
- # bin/startup.sh
- # head logs/catalina.out
-
- // 可以看到以下结果:
- 信息: Loaded APR based Apache Tomcat Native library 1.1.14.
- 2009-1-13 11:12:51 org.apache.catalina.core.AprLifecycleListener init
- 信息: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
好了, 可以运行了,但没有测试其性能提升多少。
參考自:http://www.chinajvm.com/main/helpcontent.jsp?id=5320b71a1eb098e2011ee230a2311367
http://blog.chenlb.com/2009/01/install-apache-portable-runtime-or-tomcat-native-on-tomcat.html
分享到:
相关推荐
2. **Tomcat**:Tomcat是一款开源的Java Servlet容器,主要用于运行Java Web应用程序,支持JSP和Servlet。 3. **JK模块( mod_jk)**:Apache的JK模块是一个负载均衡和反向代理模块,专门设计用来与Tomcat和其他基于...
Apache+JK+Tomcat搭建负载均衡是一种常见的高可用性和性能优化策略,主要目的是分散网络流量,提高服务的稳定性和响应速度。这个方案特别适合大型网站或应用,可以有效防止单点故障,提升用户体验。 首先,负载均衡...
在构建高性能的Web服务环境中,Apache2和Tomcat的整合是一个常见的策略,因为Apache作为静态内容服务器非常高效,而Tomcat则擅长处理Java应用和Servlets。本文将深入探讨如何将Apache2、Tomcat7与mod_jk模块(即mod...
Apache 和 Tomcat 整合是将 Apache 作为前端服务器,负责处理静态内容和反向代理,而 Tomcat 作为后端应用服务器,处理 Java 应用的动态请求。这种架构可以充分利用两者的优点,提高系统性能和可扩展性。下面我们将...
Apache2.4与Tomcat7集群的搭建是一个常见的高可用性和负载均衡的解决方案,尤其适用于大型Web应用程序。这个集群配置可以提升网站的性能,通过在多个服务器之间分发请求,提高系统的可扩展性和稳定性。 首先,...
Apache2.2与Tomcat5.5的整合配置是一个常见的任务,特别是在那些希望利用Apache作为前端服务器处理静态内容,而将动态请求转发给Tomcat处理的环境中。这种配置可以提高服务器性能并优化资源分配。 首先,我们需要...
总之,Apache2+Tomcat的负载均衡配置是一个强大的解决方案,能够帮助你在Windows环境中为Java Web应用提供高可用性和可扩展性。通过持续学习和实践,你可以进一步提升你的IT技能,为复杂的企业级应用提供稳定的服务...
通过上述步骤,我们已经在Linux环境中成功配置了一个由Apache、Tomcat和JK组成的集群。该集群不仅具备负载均衡功能,还能实现高可用性,即当某个Tomcat实例发生故障时,其会话数据能够自动迁移至集群中的其他实例,...
集群负载均衡通过JK模块实现了Apache和Tomcat之间的无缝协作,可以根据服务器的性能和负载情况动态调整流量分布,提高系统的稳定性和可扩展性。这种配置在大型网站和企业级应用中尤为常见,能够有效应对高并发访问,...
在IT行业中,集成Apache2.2与Tomcat6是一个常见的任务,这主要涉及到Web服务器与应用服务器的联合部署,以实现动态和静态内容的高效分发。Apache2.2是一个强大的HTTP服务器,常用于处理静态内容,而Tomcat6则是一个...
配置Apache2.2与Tomcat6的目的是利用Apache处理静态内容的高效性能,同时让Tomcat处理动态Java应用,以达到最佳性能。 4. **配置步骤**: - **安装Apache2.2**:首先,确保Apache服务器已经在系统上正确安装,...
Apache、Tomcat以及mod_jk模块组成的集群架构是一种常见的高性能Web服务器和应用服务器组合,用于处理高并发和负载均衡的场景。在这个配置中,Apache作为前端服务器,通过mod_jk模块与后端的Tomcat应用服务器进行...
Apache 2+Tomcat 6 负载均衡与集群配置是提高Web应用程序可用性和性能的关键技术。通过负载均衡,可以将来自用户的请求均匀分配到多个服务器,避免单点故障,提升系统的整体处理能力。而Tomcat集群则使得多个Tomcat...
1. 调整Apache和Tomcat的配置以优化性能,如调整并发连接数、内存使用等。 2. 设置防火墙规则,只允许必要的端口对外访问。 3. 对数据库进行安全配置,如修改默认root用户密码,限制远程访问等。 完成上述步骤后,...
Apache2.4与Tomcat7.0.73的整合是Web服务器与应用服务器协同工作的典型实例,这种组合常用于构建高性能、高可用性的Web应用系统。本文将深入讲解如何配置Apache2.4以实现对Tomcat7.0.73的负载均衡和session共享复制...
这种架构组合可以充分利用 Apache 的高性能和稳定性,以及 Tomcat 对 Java 应用的良好支持。 **Apache 2.4** Apache HTTP Server 2.4 是一个开源且免费的 Web 服务器,广泛应用于互联网。它的最新版本提供了更好的...
这本书详细阐述了如何将Apache作为前端服务器,与Tomcat(一个流行的Java Servlet容器)结合,以构建高性能、高可用性的Web应用系统。 在Apache与Tomcat的集成中,Apache通常作为静态内容的服务器,处理HTML、CSS、...
本文旨在深入探讨如何将Apache 2.2、Tomcat 6.0、MySQL 5.0以及mod_jk进行有效的整合,以构建一个高性能、可扩展的应用服务器环境。这种整合方式不仅能够提高系统的整体性能,还能增强其稳定性和安全性。下面将从...
- 对于安全性和性能优化方面的需求,可以根据具体场景进一步调整配置。 #### 五、总结 通过以上步骤,可以完成Apache、Tomcat和MySQL的环境搭建。这不仅为Web应用程序提供了稳定可靠的运行基础,还能够提高开发效率...