tomcat单机多实例部署
最近在面试的过程中,一家公司在面试时提到了有关tomcat单机多实例部署的提问, 正好, 之前使用IntelliJ IDEA 13.1.4这款IDE开发web项目,在开发的过程中,因为有多个web项目的部署联调,通过简单的修改端口号配置过多实例启动, 但是一直没有脱离IDE的去好好研究一番,所以正好今天有时间来研究部署了一下tomcat单机多实例的部署。
步骤如下:
1.下载一个免安装版本的```tomcat7```。
2.在tomcat目录创建一个tomcat-ins文件夹,该文件夹作为多实例的根目录。
3.分别针对每个实例创建自己的tomcat目录文件夹(conf/webapps)logs、work、temp在启动web程序的时候,会自动创建,所以无需手动创建了。
4.进入下载好的tomcat7目录,将conf文件夹下的文件复制到每个实例目录下的conf文件下。
5.修改此conf文件夹中server.xml的端口号(Server port,Connector port ,AJP port)。6.最后通过一个启动脚本启动这些实例。具体步骤如下讲解:
上面步骤中的前四项都是废话,通过一个图解应该一目了然。

上图中, 左侧的apache tomcat7目录就是解压缩后的默认目录, 删掉了其他无用的文件夹。
tomcat-ins目录就是多实例的根目录,余下的就是针对每个web实例创建相应的目录。再将conf文件中的配置信息复制过来。修改相关端口号。
最后编写一个bat批处理文件来测试启动实例。bat文件位置上图所示
代码如下:
@echo off
set JAVA_HOME=C:\Program Files\Java\jdk1..0_45
set PATH=%JAVA_HOME%\bin;%PATH%
set CATALINA_BASE=%CD%
cd ../../apache-tomcat--/bin
catalina.bat start
这里需要说明的两个变量CATALINA_HOME、CATALINA_BASE,其中CATALINA_HOME指定的是tomcat主目录,CATALINA_BASE指定的是ins的目录,因为CATALINA_BASE默认和主目录相同。%CD%表示磁盘符和当前目录。
那么通过启动这个bat文件,不出意外的话,我们的web实例就成功启动了, 然后分别启动其他的实例,没有任何问题。


<完>
tomcat单机多实例部署的更多相关文章
- 通过Zabbix监控Tomcat单机多实例
前面已经介绍过Tomcat单机多实例部署,接下来就在他的基础上进行下一步操作:Tomcat多实例监控! Tomcat多实例监控过程和之前的redis多实例原理一样,分为以下4步: 1.获取多实例 2. ...
- tomcat单机多实例
catalina.home指向公用信息的位置,就是bin和lib的父目录. catalina.base指向每个Tomcat目录私有信息的位置,就是conf.logs.temp.webapps和work ...
- Mysql 数据库单机多实例部署手记
最近的研发机器需要部署多个环境,包括数据库.为了管理方便考虑将mysql数据库进行隔离,即采用单机多实例部署的方式.找了会资料发现用的人也不是太多,一般的生产环境为了充分发挥机器性能都是单机单 ...
- MYSQL 5.5.32的单机多实例部署
Centos6.6安装并配置单机多实例的MYSQL数据库 本文介绍安装单机多实例的MYSQL数据库的环境如下: 系统平台环境:Centos6.6 Mysql软件包:Mysql-5.5.32.tar.g ...
- MySQL通过rpm安装及其单机多实例部署
1. CentOS 下安装 MySQL Oracle 收购 MySQL 后,CentOS 为避免 MySQL 闭源的风险,改用 MySQL 的分支 MariaDB:MariaDB 完全兼容 MySQL ...
- solr单机多实例部署文件锁冲突解决的方法
给出一个有问题的单机多tomcat实例引用同一个solr实例部署图. 这样的部署必定造成一个问题.启动第二个tomcat实例时,一定会报索引目录文件锁已经被占用. 最初的解决的方法是.有多少个tomc ...
- Zk单机多实例部署
一.环境准备 当前环境:centos7.3一台软件版本:zookeeper-3.5.2部署目录:/usr/local/zookeeper启动端口:2181,2182,2183配置文件:/usr/loc ...
- tomcat单机多应用部署配合Nginx负载均衡
一.Windows 配置tomcat . 安装两个tomcat服务器以上 . 配置环境变量 CATALINA_BASE:D:\servers\Tomcat8 CATALINA_HOME:D:\serv ...
- Ubuntu16.4 zookeeper-3.4.10 单机多实例部署
上传 zookeeper-3.4.10.tar.gz 到服务器 root@temple-:/usr/local/temple/jar# ll total drwxr-xr-x root root 8月 ...
随机推荐
- NOIP水题测试(2017082301)
你们从题目也能看出来今天的题是很水的. 前几期答案还没出,效率有点低,谅解,谅解. 今天的答案应该会出的很快. 下面给题目: 时间限制:3小时 题目一:旅行家的预算 题目二:进制转换 题目三:乘积最大 ...
- 27 isinstance与issubclass、反射、内置方法
isinstance与issubclass issubclass:判断子类是否属于父类,是则返回True,否则返回False isinstance:判断对象是否属于类,是则返回True,否则返回Fal ...
- ThinkPHP getBy动态查询
getBy动态查询 ThinkPHP getBy动态查询是一个魔术方法,可以根据某个字段名称动态得到对应的一条数据记录. 根据用户名(username)查询对应的用户资料记录: public func ...
- springboot Thymeleaf 整合
Thymeleaf是一个Java模板引擎开发库,可以处理和生成HTML.XML.JavaScript.CSS和文本,在Web和非Web环境下都可以正常工作. Thymeleaf可以跟Spring bo ...
- 新加了一块硬盘,在bios中可以看的到,在系统的磁盘管理器中看不到新加硬盘
今天新加了一块硬盘,进入bios中可以看到新加的硬盘,但是进入系统后在磁盘管理及磁盘驱动器中都看不到.并且在设备管理器下其他设备出现了ATA channel1,前面显示感叹号,如下图所示: 而且电脑变 ...
- IntelliJ IDEA 2017版 spring-boot 2.03后 Pageable用法;Pageable用法,PageRequest过时,新用法;Pageable过时问题;
1.旧版本Pageable用法: 但是会显示,这个版本已经过时,这时可以查看源码. 一般,一个方法过时,就会在其附近形成一个新的同名的但是其他用法的方法.按照这个理念,来找这个源码.很幸运,蒙对了,我 ...
- idea intellij对Spring进行单元测试
1.加入Junit4及SpringJUnit4支持 <!-- junit --> <dependency> <groupId>junit</groupId&g ...
- java 块语句 和引用类型
1.java中存在块语句,块语句分为四种 1.静态块 2.普通块 3.构造块 4.同步块 静态块的执行时机是在class文件装载的时候;静态块只会执行一次, 多个静态块的时候,按出现顺序执行,存放类的 ...
- poj 2240 Arbitrage(最短路问题)
Description Arbitrage is the use of discrepancies in currency exchange rates to transform one unit o ...
- bzoj2388(分块 凸包)
好像没有什么高级数据结构能够很高效地实现这个东西: 那就上万能的分块,我们用一些数形结合的思想,把下标看成横坐标,前缀和的值看成纵坐标: 给区间内每个数都加k相当于相邻两点的斜率都加上k: 这种东西我 ...