CentOS 下 Tomcat安装和配置优化

官网下载

1.直接下载.tar.gz安装包,地址:http://tomcat.apache.org/download-70.cgi

2.使用wget命令下载(推荐)。

wget -c http://mirrors.hust.edu.cn/apache/tomcat/tomcat-7/v7.0.70/bin/apache-tomcat-7.0.70.tar.gz

解压

依然是直接命令:

tar -zxvf apache-tomcat-7.0.70.tar.gz

启动

进入解压后的apache-tomcat-7.0.70 -- bin目录,执行命令:

./startup.sh

问题描述: centos7中启动tomcat提示bash: tomcat8.0.39/bin/startup.sh: 权限不够

解决方案: 
先进入bin目录

 cd /data/tomcat/apache-tomcat-7.0.78/bin

然后执行以下命令: 
 chmod u+x *.sh

最后再在bin命令行重启应用服务: 
 ./startup.sh

/data/tomcat/apache-tomcat-7.0.78/bin/startup.sh
/data/tomcat/apache-tomcat-7.0.78/bin/shutdown.sh

查看进程

ps aux|grep tomcat

打印控制台
tail -F /data/tomcat/apache-tomcat-7.0.78/logs/catalina.out

参数优化

bin/catalina.sh

JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=256m -Xms8192m -Xmx10240m"

Tomcat严重依赖SecureRandom导致启动非常慢,加入参数  -Djava.security.egd=file:/dev/./urandom

JAVA_OPTS="-server -XX:PermSize=64M -XX:MaxPermSize=256m -Xms8192m -Xmx10240m -Djava.security.egd=file:/dev/./urandom" 

 

conf/server.xml 配置

<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
connectionTimeout="20000"
redirectPort="8443"
maxThreads="6000"
minSpareThreads="200"
acceptCount="3000"
enableLookups="false" />

conf/tomcat-users.xml (管理监控帐号配置)

<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="ipi" password="123" roles="admin-gui,manager-gui"/>

 

Tomcat apr运行模式需要以下三个组件的支持:

按照官方说明需要:

OpenSSL libraries[OpenSSL库]
openssl 可以用 yum install openssl-devel

已安装:
openssl-devel.x86_64 1:1.0.1e-60.el7_3.1

APR library[APR库]
apr-1.3.2.tar.gz
apr-util-1.3.2.tar.gz
两个可以在 http://apache.mirror.phpchina.com/apr/ 找到。

JNI wrappers for APR used by Tomcat (libtcnative)[简单地说,如果是在Windows操作系统上,就是一个名为tcnative-1.dll的动态链接库文件]
tomcat-native.tar.gz 可以在 tomcat/bin 目录下找到

apr-1.6.2

apr-util-1.6.0

tomcat-native-1.2.12-src

先安装gcc

 yum install gcc

安装apr插件 
1)安装apr 
tar zxvf apr-1.6.2.tar.gz
cd apr-1.6.2 
./configure 
make 
make install 

2)安装apr-util 
程序代码 
tar zxvf apr-util-1.6.0.tar.gz 
cd apr-util-1.6.0
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr --with-apr-iconv=/usr/local/apr-iconv/bin/apriconv 

./configure --with-apr=/usr/local/apr 

make 

xml/apr_xml.c:35:19: 致命错误:expat.h:没有那个文件或目录

缺expat的开发库
yum install expat-devel

make install 

4)安装tomcat-native 
程序代码 
tar zxvf tomcat-native.tar.gz 
cd tomcat-native-1.2.12-src/native
./configure --with-apr=/usr/local/apr --with-java-home=/data/jdk1.7.0_80

make 
make install 

错误:

Found OPENSSL_VERSION_NUMBER 0x1000105f (OpenSSL 1.0.1e 11 Feb 2013)
Require OPENSSL_VERSION_NUMBER 0x1000200f or greater (1.0.2)

configure: error: Your version of OpenSSL is not compatible with this version of tcnative

安装OpenSSL 1.0.2 
由于centos 7 当前的yum 库只有1.0.1 的OpenSSL,所以我们需要手工安装1.0.2

[root@2 tomcat]# tar -xzxf openssl-1.0.2l.tar.gz
[root@2 tomcat]# cd openssl-1.0.2l

[root@2 openssl-1.0.2l]# ./config --prefix=/usr/local/openssl -fPIC
Operating system: x86_64-whatever-linux2
You need Perl 5.

下载一个版本低一点的Tomcat-native包

http://mirrors.hust.edu.cn/apache/tomcat/tomcat-connectors/native/1.1.34/source/tomcat-native-1.1.34-src.tar.gz

tar zxvf tomcat-native-1.1.34-src.tar.gz

cd tomcat-native-1.1.34-src/jni/native

./configure --with-apr=/usr/local/apr --with-java-home=/data/jdk1.7.0_80

make 
make install 

添加环境变量 
vi /etc/profile #在他文件末尾处添加下面的变量 
# apr 
export LD_LIBRARY_PATH=/usr/local/apr/lib 
执行 
source /etc/profile 
此时环境变量生效果 

为不影响其他 tomcat的配置,我们不采用上面的设置方法,而是直接在 tomcat的 bin下的 catalina.sh中加入如下配置:

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/apr/lib
export LD_LIBRARY_PATH

posted @ 2017-07-10 20:41  Tomson Qiang  阅读(2464)  评论(0编辑  收藏  举报