• tomcat多实例配置


    有一台server上跑个tomcat的实例的情况,我遇到过这种情况,毕竟把多个应用部署到一个实例中,如果某个应用出了问题,导致tomcat奔溃,其他应用也gg了。闲话到此。


    通常部署多实例就是解压多个tomcat的包,然后保证不同实例所涉及的端口不一致就好了。另外的方法是共用tomcat的bin和lib进行多个实例的部署,下面是示范动作:

    1. 下载tomcat的zip版本,解压到D盘,到conf目录把setclasspath.bat前加上“set JAVA_HOME=jdk目录”(不要带引号)
    2. 进入tomcat所在的目录并新建实例目录,加速为x-instance,把除了bin和lib目录的所有内容全部移动到x-instance目录,复制x-instance到当前目录多份,重命名为y-instance、z-instance,此时就有三个实例了。
    3. 修改y实例下的server.xml配置文件的三个端口号,我是在之前基础上加一
    4. 修改z实例下的server.xml配置文件的三个端口好,我是在之前基础上加二
    5. 为x、y、z实例分别创建启动脚本
    6. 打完收工

    启动脚本:

    # windows版本,linu版本原理相同
    # 存放位置在实例的目录内
    
    @echo off
    @echo 删除缓存
    rmdir /S /Q %CD%/work
    
    rem------------------------------------------------------------------------------------------
    rem set the CATALINA_OPTS & JAVA_OPTS
    rem set JAVA_OPTS=-Xms64m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=200m -XX:MaxPermSize=200m
    rem
    rem-------------------------------------------------------------------------------------------
    
    SET CATALINA_BASE=%CD%
    
    cd ../bin
    
    set title=实例名称
    
    catalina.bat start
    
    
    

    关闭脚本:

    # 这里用到了sed和awk工具需要自己到网上找windows版本的,比较好找。
    # 对应位置需要修改。
    
    @echo off
    rem ----------------------------------------------------------------
    
    set tomcatport=8080
    set appinfo=测试服务
    
    rem -----------------------------------------------------------------
    
    netstat -ano | findstr %tomcatport% | gawk "{ print $5 } " > command.tmp
    
    
    findstr [0-9] command.tmp > tmp.tmp
    
    
    if   %errorlevel% == 1 goto done
    
    	sed -e "s/.*/taskkill /f /pid  &/" command.tmp | sed -n "w b.bat"
    	call b.bat
    	echo 当前已经关闭了端口为%tomcatport%的tomcat服务
    	echo 被关闭的应用为:%appinfo%
    	goto done
    
    :done
    	del /f command.tmp
    	if exist b.bat del /f b.bat
             if exist tmp.tmp del /f tmp.tmp
    	echo 当已经没有端口为%tomcatport%的tomcat服务在运行。
    	echo by:luohaonan 
    
    
    pause
    
    

    实例的目录的截图:

    三个实例运行的截图:

    关闭服务脚本运行的截图:

  • 相关阅读:
    MySQL学习(十二)
    MySQL学习(十一)
    MySQL学习(十)
    MySQL学习(九)
    MySQL学习(八)
    hlg1600线性代数中的矩阵问题【区间dp】
    HDU1556Color the ball【标号法||树状数组】
    hlg1481 Attack of the Giant n-pus【二分+二分图】
    0918
    20140913
  • 原文地址:https://www.cnblogs.com/blbl9527/p/7494177.html
Copyright © 2020-2023  润新知