CentOS6系统tomcat配置apr--踩坑之作

tomcat中一共有三种运行模式,分别是:bio,nio,apr
bio是阻塞式IO操作,使用的是传统的java i/o处理方式,对于每一个请求都要创建一个线程来进行处理,所以开销较大不适合处理高并发的场景
nio是基于java中非阻塞IO操作的API实现,比传统的i/o处理方式有更高的并发运行性能,也是tomcat8默认模式
apr是从操作系统级别解决异步IO问题,大幅度提高服务器的并发处理性能,也是Tomcat生产环境运行的首选方式
centos6安装配置时众多坑,一个一个填
yum install apr-devel gcc gcc-c++ openssl-devel openssl #首先安装依赖包
在编译安装native时,会提示apr版本低,需要重新编译安装
安装apr
cd /usr/local
wget http://www.apache.org/dist/apr/apr-1.6.5.tar.gz
tar xf apr-1.6.5.tar.gz -C /usr/local/src
cd /usr/local/src/apr-1.6.5
./configure --prefix=/usr/local/apr
make && make install

安装apr-util
yum install expat-devel #安装依赖包
wget http://mirrors.hust.edu.cn/apache//apr/apr-util-1.6.1.tar.gz
tar xf apr-util-1.6.1.tar.gz -C /usr/local/src/
cd /usr/local/src/apr-util-1.6.1
./configure --with-apr=/usr/local/apr
make && make install

安装native
cd /usr/local
wget http://archive.apache.org/dist/tomcat/tomcat-connectors/native/1.2.16/source/tomcat-native-1.2.16-src.tar.gz
tar xf tomcat-native-1.2.16-src.tar.gz -C /usr/local/src/
cd /usr/local/src/tomcat-native-1.2.16-src/native
./configure --with-apr=/usr/local/apr --with-java-home=/usr/local/jdk

如果提示openssl不兼容,(error: Your version of OpenSSL is not compatible with this version of tcnativ)需要重新安装高版本的openssl

wget https://www.openssl.org/source/openssl-1.0.2-latest.tar.gz
tar xf openssl-1.0.2-latest.tar.gz
cd openssl-1.0.2q
./config --prefix=/usr/local/openssl -fPIC #注意这里需要加入 -fPIC参数,否则后面在安装tomcat native 组件会出错
make && make install
mv /usr/bin/openssl ~
ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
openssl version #查看安装后的版本
OpenSSL 1.0.2q 20 Nov 2018
cd /usr/local/src/tomcat-native-1.2.16-src/native #进入native目录,再次编译安装native
./configure --with-apr=/usr/local/apr --with-java-home=/usr/local/jdk --with-ssl=/usr/local/openssl
make && make install

安装完成后提示:"have your system administrator add LIBDIR to '/etc/ld.so.conf'"
需要添加库文件:
vim /etc/ld.so.conf
/usr/local/apr/lib ##添加此行
[root@localhost native]# ldconfig
[root@localhost native]# echo "ldconfig" >>/etc/rc.local
添加环境变量:
[root@localhost native]# vim /etc/profile
最后添加:
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
export LD_RUN_PATH=$LD_RUN_PATH:/usr/local/apr/lib
重读生效:
[root@localhost native]#source /etc/profile

编辑tomcat配置文件
vim server.xml
protocol="org.apache.coyote.http11.Http11AprProtocol" #修改HTTP/1.1协议内容

重启tomcat,就会看到协议已经换成apr
lifecycleEvent Loaded APR based Apache Tomcat Native library 1.2.16 using APR version 1.6.5.
如果是CentOS7,apr、openssl直接yum安装即可使用,省去很多编译安装的繁琐步骤

转载于:https://blog.51cto.com/kouhao/2336218

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值