在同一台机器上设置JBoss进行开发和测试的最佳方法是什么

时间:2017-01-17 14:15:16

标签: xml jboss

我想知道在同一台机器上设置开发环境和测试环境的最佳方法。

目前我有两个批处理文件,用 standalone-full-ha-local.xml 独立替换 standalone-full-ha.xml - 全HA-的test.xml

提前致谢。

2 个答案:

答案 0 :(得分:0)

这取决于应用程序设计。

standalone.xml:这是独立服务器的默认配置文件。它包含有关独立服务器的所有信息,包括子系统,网络,部署,套接字绑定和其他可配置的详细信息

独立服务器的此配置。它包括对除高可用性所需的子系统之外的每个可能子系统的支持

standalone-ha.xml:此配置文件为独立服务器启用mod_cluster和JGroups子系统,以便它可以参与高可用性或负载平衡群集。托管域不需要此文件。

此配置文件启用所有默认子系统,并为独立服务器添加mod_cluster和JGroups子系统,以便它可以参与高可用性或负载平衡群集。此文件不适用于托管域

standalone-full.xml:独立服务器的此配置。它包括对每个可能的子系统的支持,除了高可用性所需的子系统。

standalone-full-ha.xml:独立服务器的此配置。它包括对每个可能的子系统的支持,包括高可用性所需的子系统。

答案 1 :(得分:0)

有多种方法可以执行此操作,具体取决于您是希望开发和测试同时运行还是一次只运行一个。

方案1:您将一次只运行开发和测试对于此方案,您可以将这两个文件保留在独立/配置中,而不是替换standalone-ha xml文件目录并使用JVM参数-Djboss.server.default.config选择JBoss应使用的文件。

要完成此操作,您可以创建2个standalone.conf.bat(如果使用linux,则为standalone.conf)文件的副本,该文件位于bin文件夹中。您可以将它们命名为standalone-local.conf.bat和standalone-test.conf.bat。

在每个文件中,您可以使用JAVA_OPTS指定要使用的独立xml文件。

因此,在standalone-local.conf.bat中,您可以将设置的JAVA_OPTS行更改为

set "JAVA_OPTS=-Djboss.server.default.config=standalone-full-ha-local.xml"

并在standalone-test.conf.bat中,您将设置的JAVA_OPTS行更改为

set "JAVA_OPTS=-Djboss.server.default.config=standalone-full-ha-test.xml"

如果您有任何其他JVM参数,则可以将它们添加到上一行。

现在创建standalone.bat文件的两个副本(如果使用linux,则为standalone.sh)。

在名为standalone-local.bat的第一个副本中,从standalone.conf.bat to standalone-local.conf.bat. (located at line 92)

更改配置文件的名称

在名为standalone-test.bat的第二个副本中,从standalone.conf to standalone-test.conf.bat. (located at line 92)更改配置文件的名称。

现在你的JBoss服务器已准备好同时运行dev和test(虽然一次只能运行其中一个)。如果您使用standalone-local.bat启动Jboss服务器,那么它将加载您的开发配置。如果使用standalone-test.bat启动JBoss服务器,那么它将加载测试配置。

场景2:您将同时运行开发和测试

对于这种情况,请确保您有足够的RAM分配给两个JVM的堆。 将完整的jboss服务器文件夹复制到新位置。最终会有两个独立的JBoss目录。 (例如,C:\jboss-dev\C:\jboss-test\)。 将您的dev独立xml文件复制到C:\jboss-dev\standalone\configuration。 将测试独立xml文件复制到C:\jboss-test\standalone\configuration

在位于bin文件夹中的dev jboss服务器的standalone.conf.bat文件(standalone.conf,如果使用linux)中,将以下JVM参数添加到JAVA_OPTS

set "JAVA_OPTS=-Djboss.socket.binding.port-offset=100"

您可以将应用程序所需的任何其他JVM参数添加到JAVA_OPTS。添加-Djboss.socket.binding.port-offset=100 JVM参数会将JBoss使用的所有端口偏移100个。因此,如果HTTP的默认端口早先是8080,那么在添加上述参数之后,开发JBoss服务器将使用8180用于HTTP。这将确保此JBoss使用的端口与在同一台机器上运行的任何其他JBoss服务器不冲突。

测试环境无需更改,因为它可以使用默认的JBoss端口。

现在,您可以同时启动dev和测试JBoss服务器,而不会发生任何端口冲突,并且可以并行运行。