有一台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

实例的目录的截图:

三个实例运行的截图:

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

tomcat多实例配置的更多相关文章

  1. 搭建Tomcat应用服务器、tomcat虚拟主机及Tomcat多实例部署

    一.环境准备 系统版本:CentOS release 6.6 (Final) x86_64 Tomcat版本:tomcat- JDK版本:jdk-8u25-linux-x64 关闭防火墙 软件包下载地 ...

  2. Nginx+Tomcat多实例及负载均衡配置

    Nginx+Tomcat多实例及负载均衡配置 采用nginx的反向代理负载均衡功能,配合后端的tomcat多实例来实现tomcat WEB服务的负载均衡 01 安装nginx服务 安装所需的pcre库 ...

  3. Tomcat+JSP经典配置实例

    经常看到jsp的初学者问tomcat下如何配置jsp.servlet和bean的问题,于是总结了一下如何tomcat下配置jsp.servlet和ben,希望对那些初学者有所帮助. 一.开发环境配置 ...

  4. Tomcat server.xml配置示例

    本文由 ImportNew 几乎所有容器类型的应用都会包含一个名为 server.xml 的文件结构.基本上,其中的每个元数据或者配置都是容器完成初始化所需要的.正是由于这些内容都是可配置的,使得软件 ...

  5. nginx+tomcat集群配置(4)--rewrite规则和多应用根目录设定思路

    前言: nginx中有一块很重要的概念, 就是rewrite规则. 它会对URL进行修改, 然后进行内部的重定向. rewrite授予了nginx更多的自由, 使得后级服务的接入更加地方便. 本文将简 ...

  6. nginx+tomcat集群配置(1)---根目录设定和多后端分发配置

    前言: 对于javaer而言, nginx+tomcat集群配置, 已然成了web应用部署的主流. 大公司如此, 小公司亦然. 对于个人开发者而言, 资源有限, 往往多个web应用混部于一台服务器(云 ...

  7. Linux+Apache+Tomcat集群配置

    参考: http://blog.csdn.net/bluishglc/article/details/6867358# http://andashu.blog.51cto.com/8673810/13 ...

  8. Tomcat多实例部署

    前言 以前总是采用很Low的方式太同一台服务器上部署多个Web应用,步骤是这样的:Copy Tomcat目录-->更改conf/server.xml三个端口号----->部署war包--- ...

  9. tomcat多实例

    //结合博主之前的安装tomcat的博文一起看,tomcat多实例就是在不同路径启动多个tomcat,然后在本机不同端口启动 [root@ycj ~]# cd /usr/local/src/ [roo ...

随机推荐

  1. Hosts工作原理及作用

    Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开.其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”.当用户在浏览器中输入一个需要登录的网址时,系统会先检查系自己的Ho ...

  2. 查找字符串strscan

    ;Author : Bing ;Date : 1/10/2019;Usage: modify log drictory according to actual drictory fileopen fh ...

  3. Kubernetes集群部署及简单命令行操作

    三个阶段部署docker:https://www.cnblogs.com/rdchenxi/p/10381631.html 环境准备 [root@master ~]# hostnamectl set- ...

  4. 吴裕雄--天生自然ORACLE数据库学习笔记:常用SQL*Plus命令

    set pause on set pause '按<enter>键继续' select user_id,username,account_status from dba_users; sh ...

  5. A - Bi-shoe and Phi-shoe 素数打表

    A - Bi-shoe and Phi-shoe Bamboo Pole-vault is a massively popular sport in Xzhiland. And Master Phi- ...

  6. spring boot ApplicationRunner使用

    spring boot ApplicationRunner使用 它的使用比较简单,实现ApplicationRunner的run方法 package com.hikvision.pbg.jc.conf ...

  7. Azure DNS-

    先看什么是DNS,通常来讲,DNS是将域名解析成IP的服务,例如www.azure.cn对应的IP地址是139.217.8.104 使用域名访问有如下好处: 1. 好记,使用特定的字母组合,代替ip地 ...

  8. uniGUI之uniPanel(20)

    1]uniPanel常用设置: 2]多个uniPanel在一个uniPanel里显示 uniPanel常用设置: 2]多个uniPanel在一个uniPanel里显示 uniPanel0.Alignm ...

  9. python 中的富文本编译器

    第一种方式: 1,pip install django-tinymce 2,在INSTALL_APPS里面添加tinymce        在站点中使用: 配置setting.py TINYMCE_D ...

  10. jQuery序列化表单 serialize() serializeArray()(非常重要)

    https://m.2cto.com/kf/201412/361303.html 2014-12-15 1.serialize()方法 描述:序列化表单内容为字符串,用于Ajax请求. 格式:var ...