Tomcat 多实例配置方式
拾与拾柒

对于 Tomcat 的运行而言,需要两个路径:CATALINA_HOMECATALINA_BASECATALINA_HOME 代表 Tomcat 的安装根路径,例如 /home/tomcat/apache-tomcat-9.0.27

CATALINA_BASE 代表某个 Tomcat 运行实例的配置根路径。在默认情况下,CATALINA_HOMECATALINA_BASE 是指向同一路径的,即 Tomcat 的安装路径。

当需要开启多个实例的时候,可以分别指定 CATALINA_HOMECATALINA_BASE。相对于同时复制多个 Tomcat,这样做的好处是在需要升级 Tomcat 版本的时候,只需要更新 CATALINA_HOME 下的文件即可。所有的 Tomcat 实例都会共享一个 CATALINA_HOME

而对于 CATALINA_BASE,可以为每个不同的 Tomcat 实例指定不同的路径。CATALINA_BASE 应当包含以下文件夹:logs、webapps、work、temp 和 conf。CATALINA_BASE 至少应该包含 conf/server.xml 和 conf/web.xml。

说了那么多,实际上部署多实例非常简单,进入 Tomcat 的安装路径,例如 /home/tomcat/apache-tomcat-9.0.27,首先创建一个文件夹,并将 logs、webapps、work、temp 和 conf 这几个文件夹复制到其中:

1
2
mkdir catalina_base_1
mv logs webapps work temp conf catalina_base_1/

如果有修改过 conf/server.xml 中的 Context path,记得根据新的路径进行更改。接下来就可以启动实例了,在 Tomcat 安装路径下执行:

1
CATALINA_BASE=catalina_base_1 bin/catalina.sh start

停止等操作同理,例如:

1
CATALINA_BASE=catalina_base_1 bin/shutdown.sh

如果需要配置第二个实例,同样创建 catalina_base_2 文件夹即可,只要在启动之前指定对应的 CATALINA_BASE 即可,例如:

1
CATALINA_BASE=catalina_base_2 bin/catalina.sh run
  • 本文标题:Tomcat 多实例配置方式
  • 本文作者:拾与拾柒
  • 创建时间:2019-11-10 20:55:15
  • 本文链接:https://blog.iifatree.com/2019/11/10/tomcat-multiple-instances-guide/
  • 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
 评论