rss· 投稿· 设为首页· 加入收藏· 繁體版
当前位置: 火魔网 » 程序开发 » Java基础

Linux as4下apache+tomcat+JDK整合

================================================================================

Linux as4下apache+tomcat+JDK整合
    
原理:
    tomcat和apache各有各的优缺点,tomcat对JAVA的支持,是apache所不能比的,但同时tomcat对静态页面的处理,安全性和WEB服务的性能又不如apache服务,因此将两种应用相结合,由apache做web服务,处理前台工作,当有JAVA方面的请求时,将请求转发给tomcat, tomcat做后台处理,将结果交给apache.由apache服务把结果返回给浏览用户.让两种服务相互弥补不足,发挥自己所长.
  
  架构方式:
    
     服务1上部署:[Apache][Tomcat][转发器][JDK]
    
     服务2上部署:[Tomcat][JDK] (做负载均衡)
    
     如果条件允许可以将apache单独部署到一台服务器上,这个可以减轻服务器1的压力
  
  1.操作系统
  
  RedHat Linux AS4
  
  2.所需软件包
  
  [Apache]  httpd-2.2.8.tar.gz
  
  [Tomcat]  apache-tomcat-5.5.16.tar.tar
     
  [转发器] tomcat-connectors-1.2.26-src.tar.gz
    
  [JDK] jdk-1_5_0_06-linux-i586.bin
  
  
  3.安装步骤
  
  A 安装JDK
  
    将jdk-1_5_0_06-linux-i586.bin拷贝到/usr/local下
  
    # cd /usr/local/
  
  # chmod +x jdk-1_5_0_06-linux-i586.bin
  
  # ./jdk-1.5.0_04-linux-i586-rpm.bin    //此时会要求接受协议,输入yes即可
    
  # vi /root/.bashe_profile
  
  #
  
  添加如下内容
  
  export   CATALINA_HOME=/usr/local/tomcat                             //定义tomcat
    PATH=$JAVA_HOME/bin:$PATH:$HOME/bin:$CATALINA_HOME/bin
    export   JAVA_HOME=/usr/local/jdk                                    //定义jdk
    export   CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
    export   PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH:HOMR/bin
    export   JAVA_OPTS="-Djava.awt.headless=true"
    export   LANG=zh_CN                                                  //定义字符集
  
  B 安装Apache
  
    将httpd-2.2.8.tar.gz拷贝到/usr/local/src下
   
    #cp httpd-2.2.8.tar.gz /usr/local/src
  
  # tar zxvf httpd-2.2.8.tar.gz
  
  # cd httpd-2.2.8
  
  #./configure --prefix=/usr/local/apache2  --enable-so --enable-vhost-alias --enable-rewrite --enable-deflate --with-mpm=worker
   
    #make
   
    #make install
  
  # vi /usr/local/apache/conf/httpd.conf
  
  将Listen 80 修改为Listen 127.0.0.1:80 (219行)        例//Listen 本机IP:80(个人认为改不改没有意义)
  
  将ServerName 修改为ServerName LocalHost:80 (291行)
  
  在DirectoryIndex中添加 index.jsp (394行)
  
  # cd /usr/local/apache/bin/
  
  # ./apachectl configtest
  
  显示Syntax ok则表明安装成功
  
    启动服务

  #./apachectl start
  
  启动apache服务后,浏览器中访问本机80端口,查看端口是否正常,输入:本机IP:80
  
    关闭服务

  # ./apachectl stop
  
  
  
  C安装Tomcat
  
    将apache-tomcat-5.5.16.tar.tar拷贝到所要安装的目录
  
    # cp apache-tomcat-5.5.16.tar.tar /usr/local/
  
  # tar zxvf apache-tomcat-5.5.16.tar.tar
  
  # mv apache-tomcat-5.5.16 tomcat
  
    启动服务

  # cd /usr/local/tomcat/bin
   
    #./startup.sh
   
    关闭服务
   
    #./shutdown.sh
  
  验证:启动服务后,访问本机8080端口,查看端口是否正常(输入 本机IP:8080)
  
  
  D 安装 转发器

  将tomcat-connectors-1.2.26-src.tar.gz拷贝到相应目录/usr/local/src
  
  # tar xzvf tomcat-connectors-1.2.26-src.tar.gz
  
  # cd tomcat-connectors-1.2.26-src.tar.gz/jk/native
  
  # chmod 755 buildconf.sh
  
  # ./buildconf.sh
  
  # ./configure --with-apxs=/usr/local/apache/bin/apxs
  
  # make
  
  # make install
  
  # cd /usr/local/tomcat-connectors-1.2.26-src.tar.gz/native/apache-2.0/
  
  # cp mod_jk.so /usr/local/apache2/modules/
  
  E 系统整合

    配置服务器1  

  # vi /usr/local/apache/conf/httpd.conf
  
  在文件最末尾加上如下语句
  
  #Load mod_jk
  
  LoadModule jk_module modules/mod_jk.so
  
  # Configure mod_jk
  
  JkWorkersFile conf/workers.properties
  
  JkLogFile logs/mod_jk.log
  
  JkLogLevel info
  
  JkMount /*.jsp loadbalancer
  
  JkMount /servlet/* loadbalancer
  
  JkMount /application/* loadbalancer
  
  #vi /usr/local/apache2/conf/workers.properties
  
  添加下列语句
  
  #
  
  # workers.properties
  
  #
  
  # In Unix, we use forward slashes:
  
  ps=/
  
  # list the workers by name
  
  worker.list=tomcat1, tomcat2, loadbalancer
  
  # ------------------------
  
  # First tomcat server
  
  # ------------------------
  
  worker.tomcat1.port=8009
  
  worker.tomcat1.host=*.*.*.*                            //第一台服务器的IP
  
  worker.tomcat1.type=ajp13
  
  # Specify the size of the open connection cache.
  
  #worker.tomcat1.cachesize
  
  #
  
  # Specifies the load balance factor when used with
  
  # a load balancing worker.
  
  # Note:
  
  # ----> lbfactor must be > 0
  
  # ----> Low lbfactor means less work done by the worker.
  
  worker.tomcat1.lbfactor=100
  
  # ------------------------
  
  # Second tomcat server
  
  # ------------------------
  
  worker.tomcat2.port=8009
  
  worker.tomcat2.host=*.*.*.*                            //第二台服务器的IP
  
  worker.tomcat2.type=ajp13
  
  # Specify the size of the open connection cache.
  
  #worker.tomcat2.cachesize
  
  #
  
  # Specifies the load balance factor when used with
  
  # a load balancing worker.
  
  # Note:
  
  # ----> lbfactor must be > 0
  
  # ----> Low lbfactor means less work done by the worker.
  
  worker.tomcat2.lbfactor=100
  
  # ------------------------
  
  # Load Balancer worker
  
  # ------------------------
  
  # The loadbalancer (type lb) worker performs weighted round-robin
  
  # load balancing with sticky sessions.
  
  # Note:
  
  # ----> If a worker dies, the load balancer will check its state
  
  # once in a while. Until then all work is redirected to peer
  
  # worker.
  
  worker.loadbalancer.type=lb
  
  worker.loadbalancer.balanced_workers=tomcat1, tomcat2
  
  #
  
  # END workers.properties
  
  #
  
    配置tomcat
  
    #vi /usr/local/tomcat/conf/server.xml
    
  在120行左右加入如下语句(去注释)<!--符号代表注释的开头,-->符号代表注释的结尾。

 <Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat1"></Engine>
  
  
    例:
    <!-- You should set jvmRoute to support load-balancing via AJP ie :
    <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">-->
    <Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat1"></Engine>

    配置服务器2

    安装JDK方法同上
    安装tomcat方法同上
    配置tomcat
    #vi /usr/local/tomcat/conf/server.xml
    
  在120行下插入语句(去注释)
  
  <Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat2"></Engine>

  
    例:
    <!-- You should set jvmRoute to support load-balancing via AJP ie :
    <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm1">-->
    <Engine name="Standalone" defaultHost="localhost" jvmRoute="tomcat2"></Engine>
    

  系统整合完毕
  
  启动apache和tomcat服务
  
  # /usr/local/apache2/bin/apachectl start
  
  # /usr/local/tomcat/bin/startup.sh

   测试
    1在浏览器中输入http://apache机器的ip 回车.如果能够出现tomcat的测试页面 表示成功!
    2关闭第一台服务器上的tomcat,后在浏览器中输入http://apache机器的ip 回车 如果能够出现tomcat的测试页面表示成功!(此时说明第二台服务器上的tomcat工作正常)

作者:李加龙   友:喜悦转载

供大家参考并祝大家工作顺利事业有成!!!

      
  

顶一下
(0)
踩一下
(0)