0

我不确定我要问的是正确的方法。所以,让我首先澄清我的要求。

到目前为止,我将每个应用程序用作根应用程序并将它们部署在单独的 tomcat 实例中,但我的应用程序数量现在正在增长,我无法继续为每个应用程序部署单独的 tomcat 实例。

有两件事让我将每个应用程序都部署为 root:

  1. 要更新应用程序,您必须关闭 tomcat 实例,这也会停止在同一实例中运行的其他应用程序。而且我不希望这种情况发生(因为一些用户住在一个网络应用程序上,或者一些工作正在某个应用程序上运行,所以我不能在任何给定时间停止所有应用程序)。

  2. 对于编写 url,如果我以 root 身份部署 web 应用程序,那么在 web-app 中我可以简单地编写 "/students/list" ,但是如果我将它们部署在具有不同上下文名称的同一实例中,那么我必须编写上下文名称在网址之前,例如“ctxt1/students/list”

并且为了开发人员的缘故,我不希望他们在 web-app 中的每个 url 之前写上下文名称,我也不希望上下文名称出现在用户面前。

有什么方法可以解决这两个问题。我正在考虑为某些应用迁移到 Glassfish。如果 glassfish 为这些问题提供解决方案,那么我也可以将所有应用程序迁移到 glassfish

其次,我使用 ISAPI 在 IIS 后面运行 tomcat。如果 IIS 可以在这里提供任何帮助?

4

1 回答 1

1

你不应该每个 App 使用一个 tomcat。只有在需要(真正需要)时才应该增加 Tomcat 的数量。

您必须杀死整个 tomcat 是不正确的,对于一个应用程序更新,您应该只重新启动特定的上下文(转到http://your.tomcat:8080/manager/html)。

关于 URL,您可以在前面使用 apache,并将 mod_proxy_ajp 配置为与 tomcat 通信(参见:http ://httpd.apache.org/docs/2.2/mod/mod_proxy_ajp.html )

于 2013-09-26T13:46:48.137 回答