Tomcat 开启APR运行模式

启动tomcat8以下问题:
这里写图片描述

org.apache.catalina.core.AprLifecycleListener.lifecycleEvent 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/a
md64:/usr/lib64:/lib64:/lib:/usr/lib]

Tomcat有三种运营模式:bio、nio、apr,不同模式下Tomcat的运行效率差别比较大。

一、bio (blockingIO)

阻塞式IO,Tomcat6及以前版本默认运行模式,性能非常低下,没有经过任何优化处理。

二、nio(noblocking IO)

非阻塞式IO,Tomcat7以后的版本默认运行模式,利用java异步IO技术使Tomcat运行性能有所提升。

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

如果要开启NIO模式,直接修改server.xml里的Connector节点,修改protocol为

org.apache.coyote.http11.Http11NioProtocol,启动生效。
<Connector port="8080"             protocol="org.apache.coyote.http11.Http11NioProtocol"
               connectionTimeout="20000"
               redirectPort="8443" />

说明默认以nio模式运行。

三、apr

从操作系统级别来解决异步的IO问题,大幅度的提高性能。
必须要安装apr和native,直接启动就支持apr。

1、安装apr

#apr需要APR库和OpenSSL相关库。
$ sudo yum -y install apr-devel openssl-devel

2、安装native

$ wget http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-connectors/native/1.2.17/source/tomcat-native-1.2.17-src.tar.gz
$ tar -zxvf tomcat-native-1.2.17-src.tar.gz
$ cd tomcat-native-1.2.17-src/native
$ ./configure --with-apr=/usr/bin/apr-1-config --with-java-home="/data/services/jdk1.8.0_161" --with-ssl=yes
$ make
$ sudo make install

3、配置apr包到Tomcat可识别的路径

$ sudo ln -s /usr/local/apr/lib/libtcnative-1.so.0.2.17 /usr/lib64/libtcnative-1.so
$ sudo ln -s /usr/local/apr/lib/libtcnative-1.so.0.2.17 /usr/lib64/libtcnative-1.so.0

4、开启apr,tomct8以上版本默认是开启的

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

猜你喜欢

转载自blog.csdn.net/m0_37886429/article/details/80845183