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,处理大小为217kb的文件的响应时间一般在10秒以上(第一次访问,状态值为200的),处理大小为50kb的图片时的响应时间大都在5秒左右;对于配置了APR的tomcat。处理这两个文件的响应时间都在1毫秒左右,相差甚远啊!
测试jquery-1.3.2.min.js,大小56K,未配置APR前的初次访问响应时间在5秒以上,配置APR后的初次访问响应时间降到了1毫秒左右,大部分在1毫秒以下,极少出现20毫秒。
上面说的是在未加压力测试的情况下,如果执行压力测试,响应时间相差更远,50kb的图片在未配置APR时的响应时间会升高到20秒以上,而加上APR配置之后响应时间几乎都还在1毫秒一下。
可见APR对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
1. tar zxvf apr-1.3.2.tar.gz
2. cd apr-1.3.2
3. ./configure
4. make
5. make install
apr 默认安装在 /usr/local/apr
安装 apr-util
1. tar zxvf apr-util-1.3.2.tar.gz
2. cd apr-util-1.3.2
3. ./configure --with-apr=/usr/local/apr
4. make
5. make install
安装 tomcat-native
1. cd /usr/local/tomcat-6.0.18/bin
2. tar zxvf tomcat-native.tar.gz
3. cd tomcat-native-1.1.14-src/jni/native
4. ./configure --with-apr=/usr/local/apr --with-java-home=/usr/java/jdk1.6.0_11
5. make
6. make install
设置 apr 的环境变量:
1. vi /etc/profile
2. 添加以下内容
APR_HOME=/usr/local/apr/
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$APR_HOME/lib
Export LD_LIBRARY_PATH
3. 使配置生效source /etc/profile
为不影响其他tomcat的配置,我们不采用上面的设置方法,而是直接在tomcat的bin下的catalina.sh中加入如下配置:
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
export LD_LIBRARY_PATH
启动 tomcat 后, 看日志,有如下一行:
信息: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
javaeye给的一个普通的配置
<Connector port="8080" maxHttpHeaderSize="8192" useBodyEncodingForURI="true"
maxThreads="1000" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
compression="on" compressionMinSize="2048"
compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
connectionTimeout="20000" disableUploadTimeout="true" URIEncoding="UTF-8"/>
增大tomcat内存:
JAVA_OPTS="-server -Xms800m -Xmx800m -XX:MaxNewSize=256m"
相关推荐
配置tomcat Apr模式所需要的全部安装包及安装手册。 Apr即是tomcat的终极优化方案,它能大大提高你的tomcat处理静态文件的能力,极大程度上的避免 IO 问题
linux下tomcat开启apr时需要的apr安装包,请查看博客可以看到详细的配置步骤。 linux下tomcat开启apr时需要的apr安装包,请查看博客可以看到详细的配置步骤。
Tomcat在配置APR之后性能非常强劲。 tomcat默认采用的BIO模型,在几百并发下性能会有很严重的下降。tomcat自带还有NIO的模型,另外也可以调用APR的库来实现操作系统级别控制。 NIO模型是内置的,调用很方便,只需要...
APR所需 博文链接:https://cats-tiger.iteye.com/blog/135782
tomcat apr模式配置需要的包,及配置说明。灰常简单。让吞吐量飞起。
The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path CProgram FilesJavajdk1.6.0_04jrebin;CProgram FilesTomcat ...
tomcat9+apr+redissession共享,相关使用资料请参考https://www.jianshu.com/p/b6d57c500aa5
查了一下,需要一个apr支持,然后按提示去 下载 http://tomcat.heanet.ie/native/1.1.9/binaries/win32//tcnative-1.dll 将这个文件复制到C:WINDOWSsystem32下面 或者将这个文件放到Tomcat下的bin目录下 再启动...
Tomcat在配置APR之后性能非常强劲。 tomcat默认采用的BIO模型,在几百并发下性能会有很严重的下降。tomcat自带还有NIO的模型,另外也可以调用APR的库来实现操作系统级别控制。 NIO模型是内置的,调用很方便,只...
tomcat配置https后进行优化,使用apr工具进行配置,增加并发量和缩短访问时间
NULL 博文链接:https://coffeesweet.iteye.com/blog/648628
下面这篇文中主要介绍了在 CentOS 6.5 下为 tomcat 7 安装和配置 APR 模式的步骤和过程。在安装之前,先进行简单的介绍一下相关的内容,下面来一起学习学习吧。 技术准备 什么是APR?(以下是来自维基百科的内容) ...
apr-1.5.2.tar.gz apr-iconv-1.2.1.tar.gz apr-util-1.5.4.tar.gz httpd-2.4.18.tar.gz pcre-8.37.tar.gz pcre2-10.20.zip(可不用) tomcat-connectors-1.2.41-src.tar.gz
下面小编就为大家带来一篇Linux下Tomcat8.0.44配置使用Apr的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧