Centos 6.5配置tomcat7.0.63APR运行库支持
Tomcat是一个小型的轻量级应用服务器,也是JavaEE开发人员最常用的服务器之一。Tomcat Connector(Tomcat连接器)有bio、nio、apr三种运行模式,Tomcat的原生库基于Apache可移植运行时(Apache Portable Runtime简称APR),给程序员提供了超强的扩展性和性能,在产品运作中帮助融合原生的服务器技术以展现最佳的性能。
Tomcat在默认情况下,就是以bio模式运行的。就一般而言,bio模式是三种运行模式中性能最低的一种,Java nio是一个基于缓冲区、并能提供非阻塞I/O操作的Java API,它拥有比传统I/O操作(bio)更好的并发运行性能。让tomcat支持NIO模式只需在server.xml文件里面修改Connector节点的protocol属性,将HTTP/1.1改为org.apache.coyote.http11.Http11NioProtocol即可。
apr(Apache Portable Runtime/Apache可移植运行时),是Apache HTTP服务器的支持库。你可以简单地理解为,Tomcat将以JNI的形式调用Apache HTTP服务器的核心动态链接库来处理文件读取或网络传输操作,从而大大地提高Tomcat对静态文件的处理性能。 Tomcat apr也是在Tomcat上运行高并发应用的首选模式,但是安装apr比较复杂,需要下面4个文件:
apr-1.5.2.tar.gz apr-iconv-1.2.1.tar.gz apr-util-1.5.4.tar.gz tomcat-native-1.1.33-src.tar.gz
apr-1.5.2.tar.gz
apr-iconv-1.2.1.tar.gz
apr-util-1.5.4.tar.gz
tomcat-native-1.1.33-src.tar.gz
安装apr步骤
)安装apr
wget https://apache.fayea.com//apr/apr-1.5.2.tar.gz tar zxvf apr-1.5.2.tar cd apr-1.5.2 ./configure –prefix=/usr/local/apr make make install
wget https://apache.fayea.com//apr/apr-1.5.2.tar.gz
tar zxvf apr-1.5.2.tar
cd apr-1.5.2
./configure –prefix=/usr/local/apr
make make install
)安装apr-iconv
wget https://apache.fayea.com//apr/apr-iconv-1.2.1.tar.gz tar -zxvf apr-iconv-1.2.1.tar.gz cd apr-iconv-1.2.1 ./configure –prefix=/usr/local/apr-iconv –with-apr=/usr/local/apr make make instal
wget https://apache.fayea.com//apr/apr-iconv-1.2.1.tar.gz
tar -zxvf apr-iconv-1.2.1.tar.gz
cd apr-iconv-1.2.1
./configure –prefix=/usr/local/apr-iconv –with-apr=/usr/local/apr
make
make instal
)安装apr-util
wget https://apache.fayea.com//apr/apr-util-1.5.4.tar.gz tar zxvf apr-util-1.5.4.tar.gz cd apr-util-1.5.4 ./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr –with-apr-iconv=/usr/local/apr-iconv/bin/apriconv make make install
wget https://apache.fayea.com//apr/apr-util-1.5.4.tar.gz
tar zxvf apr-util-1.5.4.tar.gz
cd apr-util-1.5.4
./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr –with-apr-iconv=/usr/local/apr-iconv/bin/apriconv
make
make install
)安装apr-native(也可以去tomcat bin目录下找到安装包)
wget https://archive.apache.org/dist/tomcat/tomcat-connectors/native/1.1.30/source/tomcat-native-1.1.33-src.tar.gz //查看JAVA_HOME位置 echo $JAVA_HOME tar zxvf tomcat-native-1.1.33-src.tar.gz cd tomcat-native-1.1.30-src/jni/native ./configure –with-apr=/usr/local/apr –with-java-home=/usr/java/jdk1.7 make make instal
//查看JAVA_HOME位置 echo $JAVA_HOME
tar zxvf tomcat-native-1.1.33-src.tar.gz
cd tomcat-native-1.1.30-src/jni/native
./configure –with-apr=/usr/local/apr –with-java-home=/usr/java/jdk1.7
make
make instal
5)修改环境变量
vim /etc/profile 在文件末尾添加如下代码
export LD_LIBRARY_PATH=/usr/local/apr/lib
保存成功后执行
source /etc/profile使之生效
上述步骤完成后,修改tomcat安装目录conf文件里的server.xml,修改如下代码
<Connector port=”9008″ useBodyEncodingForURI=”true” URIEncoding=”UTF-8″ protocol=”org.apache.coyote.http11.Http11AprProtocol”
connectionTimeout=”20000″ maxThreads=”250″ maxHttpHeaderSize=”8192″ emptySessionPath=”true” enableLookups=”false”
acceptCount=”100″ compression=”on” compressionMinSize=”500″ noCompressionUserAgents=”gozilla, traviata” compressableMimeType=”text/html,application/xml,application/json,application/javascript,text/css,text/plain”
disableUploadTimeout=”false” connectionUploadTimeout=”60000″
redirectPort=”9833″ />
如果重启报如下错误:
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: /usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
Aug 18, 2015 12:36:49 AM org.apache.catalina.core.StandardService initInternal
SEVERE: Failed to initialize connector [Connector[HTTP/1.1-9008]]
org.apache.catalina.LifecycleException: Failed to initialize component [Connector[HTTP/1.1-9008]]
说明tomcat没有在上述路径找到native 库,执行如下步骤:
[root@ssss bin]# vi setenv.sh
CATALINA_OPTS=”$CATALINA_OPTS -Djava.library.path=/usr/local/apr/lib”
然后重启,可以看到配置成功:
INFO: Loaded APR based Apache Tomcat Native library 1.1.33 using APR version 1.5.2.
Aug 18, 2015 1:01:41 AM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true].
Aug 18, 2015 1:01:41 AM org.apache.catalina.core.AprLifecycleListener initializeSSL
INFO: OpenSSL successfully initialized (OpenSSL 1.0.1e 11 Feb 2013)
Aug 18, 2015 1:01:41 AM org.apache.coyote.AbstractProtocol init
声明: 除非转自他站(如有侵权,请联系处理)外,本文采用 BY-NC-SA 协议进行授权 | 嗅谱网
转载请注明:转自《Centos 6.5配置tomcat7.0.63APR运行库支持》
本文地址:http://www.xiupu.net/archives-4275.html
关注公众号:
微信赞赏
支付宝赞赏