tomcat性能优化之如何搭建Apr模块

时间:2021-08-10 11:36:43

前言

tomcat是一个被广泛使用的java web容器,各种调优数不胜数,由于tomcat主要运行jsp等动态页面,所以其设计主要是针对动态页面进行优化,而对静态文件的处理效率并不高。

很多时候工程师更愿意使用nginx或者apache服务器来辅助tomcat处理静态文件来提高服务器运行效率,但其实tomcat本身可以调用apache的方法来处理静态文件,极大的提高处理效率。

tomcat服务器的三种模式bio (消息阻塞模式),nio(非阻塞模式) ,apr(使用apache静态文件处理库处理静态文件)

如何在一台全新的linux上部署tomcat的apr模块?

对于已稳定使用的机器可以直接看第三步

1.安装前如果发现yum源不合适

centos 5 修改yum源方式

?
1
wget -o /etc/yum.repos.d/centos-base.repo

http://mirrors.aliyun.com/repo/centos-5.repo

或者

?
1
curl -o /etc/yum.repos.d/centos-base.repo

http://mirrors.aliyun.com/repo/centos-5.repo

centos 6 修改yum源方式

?
1
wget -o /etc/yum.repos.d/centos-base.repo

http://mirrors.aliyun.com/repo/centos-6.repo

或者

?
1
curl -o /etc/yum.repos.d/centos-base.repo

http://mirrors.aliyun.com/repo/centos-6.repo

centos 7 修改yum源方式

?
1
wget -o /etc/yum.repos.d/centos-base.repo

http://mirrors.aliyun.com/repo/centos-7.repo

或者

?
1
curl -o /etc/yum.repos.d/centos-base.repo

http://mirrors.aliyun.com/repo/centos-7.repo

2.如果解析网址错误 curl: (6) could not resolve host

配置dns步骤如下

?
1
vim /etc/resolv.conf

#一般是个空文件,在文件里加这么两个dns配置

?
1
2
nameserver 114.114.114.114
nameserver 8.8.8.8

3.安装tomcat openssl和apr组件

目前tomcat 8.x默认情况下全部是运行在nio模式下,而apr的本质就是使用jni技术调用操作系统底层的io接口,所以需要提前安装所需要的依赖,首先是需要安装openssl和apr

?
1
2
yum -y install openssl-devel
yum -y install apr-devel

4.安装native,apr,apr-util组件

先去tomcat官网下载native,apr,apr-util组件,native可以看成是tomcat和apr交互的中间环节,下载地址是:

,

apr 地址是   浏览器上去看一下,因为apache不定时更新。这里固定写以后可能wget 拉不下来,所以不固定写,大家自行下载

再解压安装

?
1
2
3
4
5
6
7
8
tar -xvzf apr-1.6.5.tar.gz
cd apr-1.6.5
./configure --prefix=/usr/local/apr
make && make install
 
tar -zxvf apr-util-1.6.1.tar.gz
cd apr-util-1.6.1
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/

#然后这里make可能出问题 原因是少一个编译库 expat-devel
可以使用 yum install expat-devel -y 来进行安装
(如果这么来不行的话,只能从系统安装光盘里找了),然后

?
1
make && make install

再安装native模块

?
1
2
3
tar -xvzf tomcat-native-1.2.10-src.tar.gz
cd tomcat-native-1.2.10-src/native/
./configure

这时可能会安装失败,因为openssl版本较低 去官网看一下最新版地址, 然后wget 下来

?
1
2
3
4
tar -xvzf openssl-1.1.0e.tar.gz
cd openssl-1.1.0e/
./config --prefix=/usr/local/openssl --openssldir=/usr/local/openssl
make && make install

稍等一会就安装成功了,现在再次进入native刚才编译的目录下,重新执行如下命令安装:

?
1
2
3
./configure --with-ssl=/usr/local/openssl
make && make installefix=/usr/local/openssl --openssldir=/usr/local/openssl
make && make install

5.修改tomcat配置文件

进入你的tomcat目服务器目录,编辑配置文件:conf/server.xml

将默认的protocol="http/1.1"修改为

?
1
protocol="org.apache.coyote.http11.http11aprprotocol"

修改完成保存并退出

6.配置环境变量(两种方式)

进入tomcat安装目录下

打开 bin/catalina.sh文件

在原有变量java_opts后面追加对应的配置即可,添加一行新的就可以:

?
1
java_opts="$java_opts -djava.library.path=/usr/local/apr/lib"

然后保存并退出后 就可以结束安装

重新启动你的tomcat服务器, 看到 catalina.out 最后边的日志

tomcat启动日志

tomcat性能优化之如何搭建Apr模块

说明tomcat apr 已经配置成功了

或者

在环境变量中加入apr的目录,让tomcat可以使用系统变量搜索到

编辑/etc/profile在最后添加如下两行内容:

?
1
2
export ld_library_path=$ld_library_path:/usr/local/apr/lib
export ld_run_path=$ld_run_path:/usr/local/apr/lib

保存之后,执行 source /etc/profile 使配置生效

然后重新启动你的tomcat服务器, 看到 catalina.out 最后边的日志

tomcat性能优化之如何搭建Apr模块

说明tomcat apr 已经配置成功了

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/w4187402/article/details/84772789