美文网首页
tomcat多实例

tomcat多实例

作者: 早_wsm | 来源:发表于2020-06-08 12:04 被阅读0次

    前言

    因业务需要与节省资源的考虑,现考虑使用tomcat多实例来完成多项业务的部署

    规划路径与目录

    • 1.在tomcat安装目录下创建test1、test2俩个项目目录
    • 2.将conf、logs、webapp、temp、work目录分别拷贝到这两个目录,然后tomcat安装目录只需要留下bin、test1、test2、lib这4个目录即可
    [root@tomcat-server tomcat]# mkdir test1 test2
    [root@tomcat-server tomcat]# cp -r conf logs webapps temp work test1
    [root@tomcat-server tomcat]# mv  conf logs webapps temp work test2
    [root@tomcat-server tomcat]# tree -d -L 2
    .
    ├── bin
    ├── lib
    ├── test1 #实例1
    │   ├── conf
    │   ├── logs
    │   ├── temp
    │   ├── webapps
    │   └── work
    └── test2 #实例2
    ├── conf
    ├── logs
    ├── temp
    ├── webapps
    └── work
    

    分别修改俩个项目的配置站点

    test1
    
    vim server.xml
    <Server port="8002" shutdown="SHUTDOWN"> #修改管理端口
    <Connector port="8082" protocol="HTTP/1.1" #修改http访问端口
    <Connector port="8042" protocol="AJP/1.3" redirectPort="8443" /> #修改ajp访问端口
    <Host name="test1" appBase="项目路径/webapps" unpackWARs="true" autoDeploy="false" > #编辑一个host主机
       <Context path="" docBase="" reloadable="true" />
       <Valve className="org.apache.catalina.valves.AccessLogValve" directory="项目路径/logs"
           prefix="test1_access_log" suffix=".txt"
           pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    </Host>
    
    test2
    vim server.xml
    <Server port="8003" shutdown="SHUTDOWN"> #修改管理端口
    <Connector port="8083" protocol="HTTP/1.1" #修改http访问端口
    <Connector port="8043" protocol="AJP/1.3" redirectPort="8443" /> #修改ajp访问端口
    <Host name="test2" appBase="项目路径/webapps" unpackWARs="true" autoDeploy="false" > #编辑一个host主机
       <Context path="" docBase="" reloadable="true" />
       <Valve className="org.apache.catalina.valves.AccessLogValve" directory="项目路径/logs"
           prefix="test2_access_log" suffix=".txt"
           pattern="%h %l %u %t &quot;%r&quot; %s %b" />
    </Host>
    ##注意端口不要存在冲突
    

    编写tomcat启动脚本

    #!/bin/sh
     # description: 启动tomcat多实例.
     . /etc/init.d/functions
     RETVAL=$?
     # tomcat实例目录
     export CATALINA_BASE="$PWD"
     # tomcat安装目录
     export CATALINA_HOME="/mnt/Tomcat"
     # 可选
     export JVM_OPTIONS="-Xms128m -Xmx128m -XX:PermSize=64m -XX:MaxPermSize=64m"
     case "$1" in
     start)
     if [ -f $CATALINA_HOME/bin/startup.sh ];then
     echo $"Start Tomcat"
     $CATALINA_HOME/bin/startup.sh
     fi
     ;;
     stop)
     if [ -f $CATALINA_HOME/bin/shutdown.sh ];then
     echo $"Stop Tomcat"
     $CATALINA_HOME/bin/shutdown.sh
     fi
     ;;
     *)
     echo $"Usage: $0 {start|stop}"
     exit 1
     ;;
     esac
     exit $RETVAL
    

    注意修改自己安装的tomcat目录

    授权并分别存放在俩个项目目录中
    chmod +x tomcat.sh
    cp tomcat.sh test1
    cp tomcat.sh test2

    分别写入测试文件index.jsp放置于站点目录下(适当修改内容)

    <%@ page language="java" %>
    <html>
    <head><title>Tomcat_Test</title></head>
    <body>
    <h1><font color="red">Tomcat.test.com</font></h1>
    <table align="centre" border="1">
    <tr>
    <td>Session ID</td>
    <% session.setAttribute("test.com","test.com"); %>
    <td><%= session.getId() %></td>
    </tr>
    <tr>
    <td>Created on</td>
    <td><%= session.getCreationTime() %></td>
    </tr>
    </table>
    </body>
    </html>
    

    分别启动脚本

    sh tomcat.sh
    访问测试页面地址
    根据对应log日志进行排查问题

    相关文章

      网友评论

          本文标题:tomcat多实例

          本文链接:https://www.haomeiwen.com/subject/bczxzhtx.html