zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    build/envsetup.sh 脚本分析 lunch函数
    DEDE自动审核会员发表的最新文章的修改方法
    php学习笔记(三)――操作符与控制结构
    简单的会话类
    学习PHP几个数学计算的内部函数
    关于gotozf学习笔记(11/08/06 12:07)
    再谈中文分词php类
    原站完整打包PHP+MYSQL,可做仿53客服在线客服系统,多用户多国语言企业版
    白话经典算法系列之二 直接插入排序的三种实现
    php 代码运行时间查看类
  • 原文地址:https://www.cnblogs.com/lgq2008/p/7147586.html
Copyright © 2011-2022 走看看