虚拟主机之间的共享战争

问题描述 投票:0回答:1

我在 Windows 服务器上运行 Tomcat 8.5。我在 server.xml 中设置了一个虚拟主机,这样我现在就拥有了转到 defaultapp 的domain1.com 和转到虚拟主机的domain2.com。这很好用。

这两个域有不同的 Web 应用程序,但共享一些 Java war 模块。是否可以共享这些内容,以便每个主机只加载一次而不是两次?

编辑:我可能不清楚:我拥有的是托管在不同虚拟主机上的 2 个 Web 应用程序,但它们调用 Restful API。

其中一些 API 是通用的,而不是在两个虚拟主机中都实例化一个 war 模块,是否可以有一个由两个虚拟主机使用的通用实例?

我唯一能想到的是将所有 API war 模块放在一个虚拟主机中,并让另一个虚拟主机 Web 应用程序在那里调用 API。

这有道理吗?有替代方案吗?

感谢您的帮助。

java war tomcat8
1个回答
0
投票

在 tomcat 中,您没有像 JEE 服务器中那样可以进行复杂共享的 .ear。 更简单:

      Bootstrap
          |
       System
          |
       Common
       /     \
  Webapp1   Webapp2 ...

因此您可以将.jar文件放在“Common”中以复制$CATALINA_BASE/lib中的jar文件,然后您可以将它们从.war文件中删除。

© www.soinside.com 2019 - 2024. All rights reserved.