标识Java EE集群中的主节点

时间:2014-08-21 18:36:09

标签: java java-ee jboss

我有一个Web应用程序部署在具有2个节点的jboss(eap 6.2)域上。 某些启动过程需要被激活,但是现在这两个过程都在两个节点上运行。这是不可取的,我需要该进程仅在1台服务器上运行(标识为主服务器)。

显然,这可以通过设置一个服务器的特殊系统属性来完成,但是我想知道是否有标准的Java EE方式将节点指定为主节点,然后在代码中读取该配置?

1 个答案:

答案 0 :(得分:0)

没有明确的标准。一些应用程序服务器为JBoss 4.x提供HA单例(https://developer.jboss.org/wiki/JBMHASingleton,为JBoss 7 / Wildfly 8提供http://www.jboss.org/quickstarts/eap/cluster-ha-singleton/

有一些方法,比如使用JGroups或在某种数据库中保存状态。您还可以使用群集JMS主题。第一个节点广播"我正在初始化"和其他人必须听取它。这不是最好的方法,但它在Java EE范围内。