`
cppmule
  • 浏览: 446404 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类

LINUX下JAVA+TOMCAT6+APR安装和优化

 
阅读更多

LINUX下JAVA+TOMCAT6+APR安装和优化

LINUX下JAVA+TOMCAT6+APR安装和优化

当前内核环境:Linux 2.6.18-164.el5 x86_64 (Centos 5.4_x64)

安装前准备–下载软件安装包(jdk,apr,tomcat):

mkdir -p /data/source
/data/source
wget http://10.0.0.221/mysoft/jdk-6u21-linux-x64-rpm.bin #请据据自已的系统选择好JDK版本,这里是64位系统
wget http://10.0.0.221/mysoft/apache-tomcat-6.0.29.tar.gz
wget http://10.0.0.221/mysoft/apr-1.4.2.tar.gz
wget http://10.0.0.221/mysoft/apr-iconv-1.2.1.tar.gz
wget http://10.0.0.221/mysoft/apr-util-1.3.10.tar.gz

JDK下载http://www.oracle.com/technetwork/java/javase/downloads/index.html
APR下载http://labs.renren.com/apache-mirror/apr/

一、安装JDK,APR
1.安装JDK环境:

chmod u+x jdk-6u21-linux-x64-rpm.bin
./jdk-6u21-linux-x64-rpm.bin
java -version

按提示过程提示完成安装.使用java -version查看当前版本,如:

java version “1.6.0_21″
Java(TM) SE Runtime Environment (build 1.6.0_21-b06)
Java HotSpot(TM) 64-Bit Server VM (build 17.0-b16, mixed mode)

为了方便以后使用,建立软链接和JAVA环境变量:

ln -s /usr/java/jdk1.6.0_21 /usr/local/java

注:/usr/java/jdk1.6.0_21是当前版本安装目录。

在/etc/profile尾部加入JAVA环境变量:
vi /etc/profile

#java & jdk
JAVA_HOME=/usr/local/java
CLASSPATH=/usr/local/java/lib/dt.jar:/usr/local/java/lib/tools.jar
PATH=/usr/local/java/bin:$PATH
export PATH JAVA_HOME CLASSPATH

2.安装ARP相关:

tar -zxvf apr-1.4.2.tar.gz
cd apr-1.4.2
./configure –prefix=/usr/local/apr
make
make install
cd ..

tar -zxvf apr-iconv-1.2.1.tar.gz
cd apr-iconv-1.2.1
./configure –prefix=/usr/local/apr-iconv –with-apr=/usr/local/apr
make
make install
cd ..

tar -zxvf apr-util-1.3.10.tar.gz
cd apr-util-1.3.10
./configure –prefix=/usr/local/apr-util –with-apr=/usr/local/apr
make
make install
cd ..

二、安装tomcat,并加入APR,将tomcat加入服务启动
1.安装tomcat

tar -zxvf apache-tomcat-6.0.29.tar.gz
mv apache-tomcat-6.0.29 /usr/local/apache-tomcat
cd /usr/local/apache-tomcat/bin/
#开启
./startup.sh

开启后使用, http://IP:8080/ 查看tomcat是否已启动成功!

2.使tomcat支持APR

cd /usr/local/apache-tomcat/bin/
tar -zxvf tomcat-native.tar.gz
cd tomcat-native-1.1.20-src/jni/native/
./configure –with-apr=/usr/local/apr –with-java-home=/usr/local/java
make
make install

将APR库加入/etc/profile尾部环境变量,方便使用:
vi /etc/profile

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

使用以下命令查看加入是否生效:

source /etc/profile
echo $LD_LIBRARY_PATH;
#关闭TOMCAT进程,例如:
kill `ps -ef|grep “java”|grep “commons-daemon”|awk ‘{print $2}’`
#重启tomcat
/usr/local/apache-tomcat/bin/startup.sh
more /usr/local/apache-tomcat/logs/catalina.out

如果有以下信息表示加载APR成功:

2011-1-17 21:08:44 org.apache.catalina.core.AprLifecycleListener init
INFO: Loaded APR based Apache Tomcat Native library 1.1.20.

3.将tomcat加入服务启动:
tomcat6自启动程序daemon-native已改成jsvc,在目录里已集成安装包:

cd /usr/local/apache-tomcat/bin/
tar -zxvf commons-daemon-native.tar.gz
cd commons-daemon-1.0.2-native-src/unix/
./configure
make
#第一次make会有出错提示,再make一次就行了
make clean
make
cp jsvc ../../
cp native/Tomcat5.sh /etc/init.d/apache-tomcat

修改启动脚本参数:
vi /etc/init.d/apache-tomcat
在#!bin/sh下一行添加:

# chkconfig: 2345 85 15
# description: Apache tomcat6

并修改相关参数:

JAVA_HOME=/usr/local/java
CATALINA_HOME=/usr/local/apache-tomcat
DAEMON_HOME=$CATALINA_HOME/bin
# I did not use the user.
TOMCAT_USER=root
# for multi instances adapt those lines.
TMP_DIR=$CATALINA_HOME/tmp
PID_FILE=/var/run/jsvc_apache.pid
CATALINA_BASE=$CATALINA_HOME
CATALINA_OPTS=”-Djava.library.path=/usr/local/apr/lib”

修改$DAEMON_HOME/src/native/unix/jsvc为$DAEMON_HOME/jsvc,在start和stop两有两处

#$DAEMON_HOME/src/native/unix/jsvc
$DAEMON_HOME/jsvc

加入自动启动

groupadd tomcat
useradd -g tomcat -s /sbin/nologin -M tomcat
chmod a+x /etc/init.d/apache-tomcat
chkconfig –add apache-tomcat
chkconfig apache-tomcat on
#记得先关闭进程,再:
/etc/init.d/apache-tomcat start

访问 http://IP:8080/ 查看tomcat是否已启动成功!

三、TOMCAT优化(虚拟内存,最大进程数)
1.修改默认虚拟内存大小
1).添加tomcat管理员,方便查看内存调整
vi /usr/local/apache-tomcat/conf/tomcat-users.xml
在tomcat-users节点里添加:

<user username=”tomcat” password=”密码” roles=”manager”/>

重启jsvc后可以登陆查看
打开http://ip:8080/
点击”status”,查看JVM选项:

Free memory: 100 MB Total memory: 100 MB Max memory: 512 MB

2).修改内存大小
修改/etc/init.d/apache-tomcat,
在CATALINA_OPTS=”-Djava.library.path=/usr/local/apr/lib”下添加一行:

JAVA_OPTS=”-Xms8192m -Xmx8192m -Xmn1024m -Djava.awt.headless=true”

(注:以上设置为最大8G,最小1G)
并在 $CATALINA_OPTS \ 前添加一行:

$JAVA_OPTS \

重启jsvc,登陆status页查看内存是否已经改变。

2.修改tomcat并发连数接数和优化设置(压缩、默认编码设置):
修改:/usr/local/apache-tomcat/conf/server.xml

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

为:

<Connector port=”8080″ protocol=”HTTP/1.1″
maxHttpHeaderSize=”8192″ useBodyEncodingForURI=”true”
maxThreads=”2048″
redirectPort=”8443″
enableLookups=”false”
compression=”on”
compressionMinSize=”2048″
compressableMimeType=”text/html,text/xml,text/javascript,text/css,text/plain”
connectionTimeout=”20000″
disableUploadTimeout=”true”
URIEncoding=”UTF-8″
/>

重启jsvc,使他生效。
注:
port:Tomcat服务器监听的端口号
maxHttpHeaderSize:Http的Header的最大限制
enableLookups=”false” 使用允许DNS查询,通常情况下设置为false
redirectPort 服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口号
maxThreads Tomcat使用线程来处理接收的每个请求。这个值表示Tomcat可创建的最大的线程数。
acceptCount 指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。
connectionTimeout 网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。
minSpareThreads Tomcat初始化时创建的线程数。
maxSpareThreads 一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。
compression=”on” 打开压缩功能
compressionMinSize 启用压缩的输出内容大小,这里面默认为2KB
compressableMimeType压缩类型
3.禁止文件修改后自动重新加载:
修改Context里的reloadable=”false”

四、修改TOMCAT默认首页和路径:
方法1.直接替换
在%TOMCAT_HOME%webappsROOT文件夹下,有一个index.jsp文件,将它用所需的JSP应用程序的首页替换.
然后打开%TOMCAT_HOME%webappsROOTWEB-INF文件夹下的web.xml进行修改,把其中的servlet-mapping部分注释掉。因为默认情况下,Tomcat的默认首页是由这个Servlet生成的,所以只替换index.jsp是不起作用的。

方法2.配置默认虚拟目录
在%TOMCAT_HOME%conf文件夹下打开server.xml文件,在<Host></Host>之间添加如下内容。

<Context path=”虚拟路径” docBase=”JSP应用程序的物理路径” workDir=”JSP应用程序的工作目录” debug=”0″ reloadable=”true”></Context>

例如:

<Context path=”" docBase=”D:\Program Files\Apache Software Foundation\Tomcat 6.0\webapps\apply” workDir=”D:\Program Files\Apache Software Foundation\Tomcat 6.0\work\Catalina\localhost\apply” reloadable=”true”></Context>

注意:
1.如果path=”"那么只要在浏览器中键入http://localhost:8080,这时看到的就是设定的JSP应用的默认首页。否则要键入http://localhost:8080/myapp
2.这种方法也可以用于JSP应用程序的发布,但是其中的默认首页一定要为index.jsp,否则在URL中要写明默认首页名。

可以修改conf 目录下的web.xml文件。
在你应用的web.xml中加上如下信息

<welcome-file-list>
<welcome-file>这里是你要默认访问的连接</welcome-file>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>

我的设置:

<Context path=”" debug=”0″ reloadable=”false” docBase=”/data/www/app_test” />

其它:使用NGINX结合TOMCAT做动静态分离:

server
{
 listen       80;
 charset utf-8;
 server_name  test.domain.com;
 index index.shtml index.html index.htm;
 root  /data/www/app_test;  
 #access_log  logs/access.log;
 location ~ .*\.(jsp|do)?$
 {
  proxy_cache     off;
  proxy_set_header Host  $host;
  proxy_set_header X-Forwarded-For  $remote_addr;
  proxy_pass      http://127.0.0.1:8001;
 }
 location ~* /WEB-INF/
 {
  deny all;
 }
 location ~ .*\.(class)?$
 {
  deny all;
 }
}

附启动文件全文:

#!/bin/sh
# chkconfig: 2345 85 15
# description: Apache tomcat6

# Adapt the following lines to your configuration
JAVA_HOME=/usr/local/java
CATALINA_HOME=/usr/local/apache-tomcat
DAEMON_HOME=$CATALINA_HOME/bin
TOMCAT_USER=root

# for multi instances adapt those lines.
TMP_DIR=$CATALINA_HOME/tmp
PID_FILE=/var/run/apache-tomcat.pid
CATALINA_BASE=$CATALINA_HOME

CATALINA_OPTS=”-Djava.library.path=/usr/local/apr/lib”
JAVA_OPTS=”-Xms8192m -Xmx8192m -Xmn1024m -Djava.awt.headless=true”
CLASSPATH=\
$JAVA_HOME/lib/tools.jar:\
$CATALINA_HOME/bin/commons-daemon.jar:\
$CATALINA_HOME/bin/bootstrap.jar

case “$1″ in
  start)
    #
    # Start Tomcat
    #
    $DAEMON_HOME/jsvc \
    -user $TOMCAT_USER \
    -home $JAVA_HOME \
    -Dcatalina.home=$CATALINA_HOME \
    -Dcatalina.base=$CATALINA_BASE \
    -Djava.io.tmpdir=$TMP_DIR \
    -wait 10 \
    -pidfile $PID_FILE \
    -outfile $CATALINA_HOME/logs/catalina.out \
    -errfile ‘&1′ \
    $JAVA_OPTS \
    $CATALINA_OPTS \
    -cp $CLASSPATH \
    org.apache.catalina.startup.Bootstrap
    #
    # To get a verbose JVM
    #-verbose \
    # To get a debug of jsvc.
    #-debug \
    exit $?
    ;;

  stop)
    #
    # Stop Tomcat
    #
    $DAEMON_HOME/jsvc \
    -stop \
    -pidfile $PID_FILE \
    org.apache.catalina.startup.Bootstrap
    exit $?
    ;;

  *)
    echo “Usage tomcat.sh start/stop”
    exit 1;;
esac

分享到:
评论

相关推荐

    linux 配置apache+tomcat

    在Linux环境下配置Apache与Tomcat,是许多Web开发者在部署Java应用时经常遇到的任务。本文将详细介绍如何在Linux系统中安装并配置JDK、Tomcat以及Apache,实现一个基本的Web服务环境。 #### 一、安装JDK 在配置...

    Windows下Apache2.2 + Tomcat5.5 + Apr配置备忘录

    而Tomcat5.5则是一个开源的Java Servlet容器,专门用于运行Java Web应用程序,包括JSP和Servlet。将两者结合,可以为用户提供丰富的Web服务体验。 Apr(Apache Portable Runtime)是Apache软件基金会开发的一个库,...

    linux+tomcat+mysql+solr调优

    ### Linux + Tomcat + MySQL + Solr ...综上所述,Linux、Tomcat、MySQL和Solr的调优是一个复杂的过程,需要结合具体的应用场景进行细致的分析与调整。希望以上提供的配置项和建议能帮助您更好地优化这些组件的性能。

    linux下tomcat开启apr时安装包

    在Linux环境下,Apache Tomcat(简称Tomcat)是一款广泛应用的开源Java Servlet容器,它负责解析并执行Java Web应用程序。为了提升Tomcat的性能,开发者有时会选择启用Apache Portable Runtime(APR)库。APR库提供...

    基于java的开发源码-Tomcat 安装apr 支持 Tomcat Native.zip

    基于java的开发源码-Tomcat 安装apr 支持 Tomcat Native.zip 基于java的开发源码-Tomcat 安装apr 支持 Tomcat Native.zip 基于java的开发源码-Tomcat 安装apr 支持 Tomcat Native.zip 基于java的开发源码-Tomcat ...

    Linux+Java+JS Web开发快速入门.doc

    这涉及到`openssl`的下载、编译和安装。 7. 安装APR(Apache Portable Runtime),它是一个跨平台的库,提供了与操作系统交互的能力。 8. 最后,安装Tomcat Native,这是一个利用APR提升Tomcat性能的本地API,能够使...

    基于java的Tomcat 安装apr 支持 Tomcat Native.zip

    总的来说,"基于java的Tomcat 安装apr 支持 Tomcat Native.zip"这个压缩包提供了一种方法,通过集成APR和Tomcat Native,来提升Java Tomcat服务器的性能,尤其是在处理大量网络I/O和SSL连接时。这个过程涉及了Java的...

    apach+tomcat+linux服务器优化指南

    综上,Apache、Tomcat和Linux的联合优化涉及多个层面,需要综合考虑服务器硬件、应用特性、系统配置等多个因素,通过细致的调整和持续的监控,才能确保服务器达到最佳运行状态。同时,定期的性能测试和维护也是保持...

    java源码:Tomcat 安装apr 支持 Tomcat Native.zip

    《深入解析Java源码:Tomcat安装与配置Apr支持》 在Java的世界里,Tomcat作为一款广泛应用的开源Servlet容器,扮演着至关重要的角色。它轻量级、高效且易于管理,深受开发者喜爱。然而,为了提升性能和利用操作系统...

    ubuntu 安装配置apache2+tomcat6+mysql5 全功略.pdf

    整个过程可以分为准备工作、安装 Ubuntu、安装 Apache2、安装 Tomcat6、安装 Mysql5 和配置环境变量几个步骤。 准备工作 -------- 在开始安装之前,需要准备以下几个文件: * ubuntu 8.04 server 版本的安装镜像 ...

    ubuntu 安装配置apache2+tomcat6+mysql5 全功略.docx

    本文将详细介绍如何在 Ubuntu 8.04 Server 版本上安装和配置 Apache2、Tomcat6 和 Mysql5。该配置能够提供一个稳定的 Web 服务器环境,支持中文和 Linux 下的中文读写。 准备工作 在安装之前,需要准备以下几个...

    tomcat 启动报APR based Apache Tomcat Native library not found

    - 安装APR库:对于Linux系统,可以使用包管理器(如`apt-get`或`yum`)安装apr和apr-util库。对于Windows,可以从Apache Tomcat官网下载对应的binaries。 - 安装Tomcat Native:下载Tomcat Native库的zip文件,解压...

    apache + tomcat + mod_jk集群

    在Windows上,可以通过安装APR库和编译mod_jk,而在Linux上,可以使用包管理器如apt或yum来安装。 4. **配置mod_jk**:在Apache的配置文件httpd.conf中,添加mod_jk的LoadModule语句,然后创建一个名为workers....

    Tomcat安裝APR指南

    - 编译和安装:`make && make install` 5.2 安装 apr-util-1.3.9.tar.gz - 解压文件:`tar -xvf apr-util-1.3.9.tar.gz` - 进入解压后的目录:`cd apr-util-1.3.9` - 配置依赖于apr的路径:`./configure --prefix=/...

    apache+tomcat整合.pdf

    1. 准备环境:确保已经安装了Linux操作系统,以及Apache HTTP Server、Tomcat服务器和Java Development Kit(JDK)。 2. 安装和配置Apache HTTP Server:下载Apache HTTP Server的源代码包,并解压。在编译安装时,...

    apache+mysql+php+tomcat+Discuz和apache+mysql+php+tomcat+lybbs.pdf

    11. **集成Apache和Tomcat**:在配置Apache时,可能需要使用mod_jk或者mod_proxy模块来代理到Tomcat,实现Apache处理静态内容,Tomcat处理动态内容(如PHP和Java应用)。 12. **论坛系统集成**:在Apache/Tomcat...

    centos6搭建tomcat,apr资源包

    本文将详细讲解如何解决在CentOS 6上搭建Tomcat时遇到的apr(Apache Portable Runtime)资源包安装问题,以及如何正确使用apr、apr-util和pcre这三个关键组件。 首先,让我们了解一下apr。它是一个跨平台的库,为...

    RHEL5 +Apache2.2.6+Tomcat5.5.26整合

    # ./configure --with-apxs=/usr/local/apache/bin/apxs --with-apr-lib=/usr/local/apache/bin --with-tomcat=/usr/local/tomcat-5.5 --with-java-home=/usr/java/jdk1.6.0_03 ``` 若在此过程中遇到关于系统时间或...

    Tomcat 安装apr 支持 Tomcat Native.7z

    在某些情况下,为了提高性能和利用操作系统级别的特性,如多线程处理和SSL硬件加速,Tomcat可以集成Apache Portable Runtime (APR) 和 Tomcat Native库。本教程将详细介绍如何在你的系统上为Tomcat安装APR支持。 ...

Global site tag (gtag.js) - Google Analytics