在一台机器上运行两个独立的tomcat,而不是一个具有多个实例的tomcat

在一台机器上运行两个独立的tomcat,而不是一个具有多个实例的tomcat

由于操作需要,以下是场景。

两个应用程序在一台机器上运行,操作系统为Windows 2003标准服务器版。

应用程序 A 随附 tomcat(版本 6.0.18),使用 tomcat 作为应用程序服务器,并使用 Microsoft IIS(版本 6.0)作为其 Web 服务器。这是供应商产品,因此是预先打包并安装的。供应商不支持对此设置的任何更改。

在同一台机器上,想安装第二个应用程序,即 Sun Directory Control Center (DSCC)。DSCC 用于管理机器上运行的目录实例。

是否可以在一台机器上运行两个独立的 Tomcat?不是作为一个 tomcat 运行多个实例,而是作为两个 tomcat 独立运行。

答案1

是的,我们经常这样做。

基本上我们的方法(在 Windows 上)是:

  1. 确保安装了完整的 JDK(Tomcat 批处理文件需要此步骤)
  2. 下载并安装 Tomcat (6.1.20) - zip 版本,而不是 Windows 安装程序。
  3. 解压到为 Tomcat 实例命名的文件夹(例如,对于 SuperWEB 1,解压到 C:\Tomcat6_SW)
  4. 将解压后的文件复制到其他所需实例的其他文件夹(例如 C:\Tomcat6_SW2、C:\Tomcat6_SV)
  5. 对于每个实例,编辑 server.xml 以避免端口冲突
  6. 对于每个实例:
    • a. 编辑 startup.bat 以明确定义 CATALINA_HOME 和 JAVA_HOME
    • b. 重命名 startup.bat 以反映 Tomcat 实例的用途,例如 SuperWEB1 的 SWstartup.bat
    • c. 按照上述方法编辑 service.bat,明确定义 CATALINA_HOME 和 JAVA_HOME
    • d. 运行 service.bat 为该 Tomcat 实例创建一个 Windows 服务,并指定服务名称和描述。服务名称必须是唯一的,不能包含空格。
    • e. 将 tomcat6w.exe 文件重命名为您创建的服务的名称(例如,如果服务名称为 SWEB1Tomcat,则 tomcat6w.exe 应重命名为 SWEB1Tomcat.exe)。如果不这样做,tomcat6w.exe 应用程序将不会引用正确的服务。
    • f. 运行重命名的应用程序并设置服务属性如下:
        1. 在 Java 选项卡中设置所需的任何 Java 选项
        1. 将启动类型设置为自动
        1. 重要提示:将登录帐户更改为“本地系统帐户”以外的其他帐户,即具有较低权限级别的帐户。

(请注意,您可能需要为每个实例创建单独的 setenv.bat 文件。

答案2

是的。你显然只需要确保它们在不同的端口上监听,这样就不会有问题了。

相关内容