如何在同一台机器上 运行 2(或更多)Wildfly 实例?

How to run 2 (or more) Wildfly instances on the same machine?

我想通过 运行ning 2 个独立的 Wildfly 实例来模拟 2 个服务器。当您不想在同一个实例上部署所有 WAR,然后只能关闭它们并同时启动它们时,这很有用。

我将 Eclipse 与 JBoss 插件一起使用,在服务器视图中,我希望有 2 个我可以停止的 Wildfly 服务器和 运行 分别和同时。我该怎么做?

可以复制您的 Wildfly 安装文件夹,但这会占用更多 space 并且您需要为每个更改更新这两个文件夹。相反,可以共享根文件夹并仅创建 2 个独立文件:

  1. 在安装文件夹中,从默认文件夹创建新的 standalone1standalone2 文件夹(或使用默认文件夹作为其中之一)。
  2. 在那里,在 deployments 文件夹中,您可以选择您需要的任何部署。
  3. 为了端口不冲突,其中一个独立设备的 configuration/standalone.xml 必须如图所示进行更改 :将数字从 0 更改为其他值,例如 200

    port-offset="${jboss.socket.binding.port-offset:200}
    
  4. 现在转到 Eclipse 并在服务器视图中创建一个新服务器。给它起一个合适的名字然后点击下一步。

  5. 在底部的下拉菜单中选择 create new runtime,然后单击下一步。
  6. 给它一个合适的运行时名称,然后在Server base directory中选择你想要的独立文件夹名称,如上面的standalone1
  7. 然后只需部署该特定实例所需的任何文件即可。

对具有不同偏移量的其他实例执行相同的操作(在上面的 1 个实例中为 8080,另一个为 8280)。

完成上述标记建议的方法后,我们必须 运行 wildfly

在Windows

standalone.bat -Djboss.server.base.dir=D:/AppServer/wildfly-10.1.0.Final/standalone1

standalone.bat -Djboss.server.base.dir=D:/AppServer/wildfly-10.1.0.Final/standalone2

在Linux

./standalone.sh -Djboss.server.base.dir=/Users/kyle/servers/wildfly-8.2.0.Final/standalone1

./standalone.sh -Djboss.server.base.dir=/Users/kyle/servers/wildfly-8.2.0.Final/standalone2