一、配置环境:
OS:CentOS6.6 Tomcat:8.5
二、CATALINA_HOME与CATALINA_BASE的区别:
CATALINA_HOME:Tomcat安装根目录。
CATALINA_BASE:特定Tomcat实例运行目录。
如果CATALINA_HOME与CATALINA_BASE指向不同的位置,CATALINA_HOME指向的目录包含静态资源,如jar文件和二进制文件。CATALINA_BASE指向的目录包含配置文件,日志文件,应用部署文件和其他运行要求的文件。
缺省情况下,CATALINA_HOME与CATALINA_BASE指向相同的目录。当需要在单机上运行多个Tomcat实例时,需要设置CATALINA_BASE。这样做有如下好处:
1、可以更好的管理Tomcat版本升级。因为所有的实例都指向相同的CATALINA_HOME,它们共享相同的jar文件和二进制文件。升级Tomcat版本时,只需替换这些文件就可以轻松升级所有实例。
2、避免每个实例重复复制jar文件和二进制文件。
3、共享特定的设置,如setenv脚本或批处理脚本文件(依赖操作系统)
三、配置多实例:
配置多实例,主要是为每个实例创建特定的CATALINA_BASE目录,并在CATALINA_BASE目录中创建适当的目录。以下是Tomcat目录的说明:
1、bin目录:
不建议在CATALINA_BASE目录中包含bin目录。查找顺序:CATALINA_BASE,CATALINA_HOME。
2、lib目录:
如果你的项目依赖外部库,建议在CATALINA_BASE目录中包含lib目录。查找顺序:CATALINA_BASE,CATALINA_HOME
3、logs目录:
建议在CATALINA_BASE目录中包含logs目录。保存特定实例的日志。
4、webapps目录:
建议在CATALINA_BASE目录中包含webapps目录。查找顺序:只查找CATALINA_BASE。
5、work目录:
建议在CATALINA_BASE目录中包含work目录。用于保存部署web应用临时工作目录。
6、temp目录:
建议在CATALINA_BASE目录中包含temp目录。用于JVM临时文件。
7、conf目录:
必须在CATALINA_BASE目录中包含conf目录,不然无法启动实例。在conf目录中至少要有server.xml和web.xml两个文件。
建议不要更改tomcat-juli.jar文件。当然,如果你需要实现自己的日志功能,你可以在特定实例的CATALINA_BASE目录中,替换tomcat-juli.jar文件。
四、启动实例:
1、Unix系统:CATALINA_BASE=/tmp/tomcat_base1 bin/catalina.sh start
2、Windows系统:CATALINA_BASE=C:\tomcat_base1 bin/catalina.bat start
五、示例:
假如要创建两个tomcat运行实例,步骤如下:
1、安装Tomcat:将Tomcat安装文件解压到相应的目录下,如:/home/tomcat/(该目录就是CATALINA_HOME)。
2、为每个实例创建自己的目录,如创建/home/app1和/home/app2两个目录(这就是CATALINA_BASE)。
3、在每个实例的目录中创建lib、logs、webapps、work、temp目录,然后将CATALINA_HOME/conf拷贝到每个实例目录中。
4、修改CATALINA_BASE/conf中的server.xml文件,配置适当的端口号,避免端口冲突。
5、以CATALINA_HOME/bin中的daemon.sh文件为模板制作两份启动文件,并拷贝到/etc/init.d,如:/etc/init.d/tomcat-app1、/etc/init.d/tomcat-app2。修改启动脚本文件,在启动脚本中CATALINA_HOME都指向/home/tomcat,CATALINA_BASE分别指向各自的目录。
6、启动停止实例:
启动停止app1实例:service tomcat-app1 start (stop)
启动停止app2实例:service tomcat-app2 start (stop)
本文详细介绍了在单机上配置多个Tomcat实例的方法,包括理解CATALINA_HOME与CATALINA_BASE的区别,如何设置多实例目录结构,以及启动和管理各实例的步骤。
4279

被折叠的 条评论
为什么被折叠?



