首页 > 解决方案 > 在同一台机器上运行 Tomcat 的第二个实例时出现问题

问题描述

我正在尝试在前一个实例的同一台机器上运行 Tomcat 的第二个实例。步骤:1)我复制了第一个实例的所有文件和文件夹,所以现在我有了

/opt/tomcat1
/opt/tomcat2

2)我修改了server.xml中的所有端口(第一个实例运行在8080、8443等,秒运行在9090、9443等)

当第一个实例已经在运行时,我尝试通过以下方式将 CATALINA_HOME 设置为 /opt/tomcat2

1) 在 setenv.sh

export CATALINA_HOME="/opt/tomcat2"
export CATALINA_BASE="/opt/tomcat2"

2)在startup.sh

export CATALINA_HOME="/opt/tomcat2"
export CATALINA_BASE="/opt/tomcat2"

3) 在外部脚本中

#!/bin/sh

JAVA_HOME=/opt/java
JAVA_OPTS="-Xmx800m -Xms800m"
CATALINA_HOME=/opt/tomcat2
CATALINA_BASE=/opt/tomcat2

 export JAVA_HOME JAVA_OPTS CATALINA_HOME CATALINA_BASE

 echo $CATALINA_HOME

 $CATALINA_HOME/bin/catalina.sh start

这些都不起作用,Tomcat 启动但仅凭此日志立即死亡

27-Mar-2019 11:18:35.984 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["http-nio-9090"]
27-Mar-2019 11:18:36.036 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["https-jsse-nio-9443"]
27-Mar-2019 11:18:36.087 INFO [main] org.apache.coyote.AbstractProtocol.pause Pausing ProtocolHandler ["ajp-nio-9009"]
27-Mar-2019 11:18:36.138 INFO [main] org.apache.catalina.core.StandardService.stopInternal Stopping service [Catalina]
27-Mar-2019 11:18:36.147 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["http-nio-9090"]
27-Mar-2019 11:18:36.149 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["https-jsse-nio-9443"]
27-Mar-2019 11:18:36.150 INFO [main] org.apache.coyote.AbstractProtocol.stop Stopping ProtocolHandler ["ajp-nio-9009"]
27-Mar-2019 11:18:36.171 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["http-nio-9090"]
27-Mar-2019 11:18:36.173 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["https-jsse-nio-9443"]
27-Mar-2019 11:18:36.173 INFO [main] org.apache.coyote.AbstractProtocol.destroy Destroying ProtocolHandler ["ajp-nio-9009"]

我很确定:

即使我停止了第一个实例,第二个实例也会立即停止。

我也遵循了本指南(https://www.c2b2.co.uk/middleware-blog/how-to-create-multiple-tomcat-instances-on-the-same-server.php),但仍然是同样的错误;第二个 Tomcat 实例启动并突然死亡。

有什么提示吗?

谢谢安德里亚

标签: tomcat

解决方案


我发现了(非常愚蠢的)问题:在 server.xml 中,关闭端口有一个 NON 有效值 (-2) 。我改成7005,一切正常。

<Server port="-2" 

推荐阅读