Java 具有多种服务的Tomcat

Java 具有多种服务的Tomcat,java,apache,tomcat,Java,Apache,Tomcat,我将我的单个tomcat配置为在不同的连接器端口上承载2个服务,如下所示:- <!-- WebApp 1--> <Service name="webapps1"> <Connector port="7001" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="

我将我的单个tomcat配置为在不同的连接器端口上承载2个服务,如下所示:-

<!-- WebApp 1-->
<Service name="webapps1">
  <Connector port="7001" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" 
             enableLookups="false" redirectPort="8443" acceptCount="100"
             connectionTimeout="20000" disableUploadTimeout="true" />
  <Engine name="receiver1" defaultHost="localhost">
    <Host name="localhost"  appBase="webapps1" unpackWARs="true"
          autoDeploy="true">
    </Host>
  </Engine>
</Service>
<!-- End of WebApp 1-->

<!-- WebApp 2-->
<Service name="webapps2">
  <Connector port="7002" maxThreads="150" minSpareThreads="25"
             maxSpareThreads="75" enableLookups="false" redirectPort="8443"
             acceptCount="100" connectionTimeout="20000"
             disableUploadTimeout="true" />
  <Engine name="receiver2" defaultHost="localhost">
    <Host name="localhost"  appBase="webapps2" unpackWARs="true"
          autoDeploy="true">
    </Host>
  </Engine>
</Service>
<!-- End of WebApp 2-->

现在,我担心的是,如果我停止tomcat,这两个服务都将停止,但我想要的是只停止/启动webapp1,这样我就可以在不影响webapp2的情况下进行更改并只重新启动webapp1

这意味着我想要的是接受7002上的请求,同时我部署并重新启动7001连接器,而不实际关闭tomcat进程

我怎样才能做到这一点。。?非常感谢您的帮助


谢谢。

您可以通过JMX启动和停止服务,但只安装两个Tomcat实例可能会更简单。如果您希望它们共享相同的二进制文件,请参阅任何Tomcat安装根目录下RUNNING.txt中标题为“高级配置-多个Tomcat实例”的部分。

启动两个独立的Tomcat实例…感谢Mark的回复。我们现在就是这样做的,通过创建多个JVM。但是我们希望减少进程占用,这就是为什么我们希望在一个tomcat中有多个服务,并且应该能够重新启动它。