Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 通过故障切换,使长时间运行的任务仅在群集的一台计算机上运行?_Java_Distributed Computing_Failover_Jgroups - Fatal编程技术网

Java 通过故障切换,使长时间运行的任务仅在群集的一台计算机上运行?

Java 通过故障切换,使长时间运行的任务仅在群集的一台计算机上运行?,java,distributed-computing,failover,jgroups,Java,Distributed Computing,Failover,Jgroups,我有一个低CPU队列处理任务,我需要保持运行一段可能很长的时间。如果任务失败,我希望任务在高可用性集群环境中运行,如果第一台机器出现故障,任务应该“切换”到另一台机器。确保任务一次只在群集中的一台机器上运行,并在机器出现故障时进行无缝故障切换的最佳方法是什么 现在,我计划使用来实现这个特性。我将为每个任务保留一个通道,只有通道负责人将执行任务,而其他成员将“跟进”。然后,如果通道负责人发生变化,新的通道负责人将从最后一个通道负责人停止的地方开始 有没有人用jgroup来解决这个问题?您的经历是什

我有一个低CPU队列处理任务,我需要保持运行一段可能很长的时间。如果任务失败,我希望任务在高可用性集群环境中运行,如果第一台机器出现故障,任务应该“切换”到另一台机器。确保任务一次只在群集中的一台机器上运行,并在机器出现故障时进行无缝故障切换的最佳方法是什么

现在,我计划使用来实现这个特性。我将为每个任务保留一个通道,只有通道负责人将执行任务,而其他成员将“跟进”。然后,如果通道负责人发生变化,新的通道负责人将从最后一个通道负责人停止的地方开始


有没有人用jgroup来解决这个问题?您的经历是什么?

您可能会从JBoss 4.2.3+中获得一些灵感和指导。定义在一个节点上运行的服务,并且在节点群集中仅在一个节点上运行。如果该节点出现故障或从集群中弹出,则会为新节点分配单例。JBoss集群的底层实现是JGroups。

您可能会从JBoss4.2.3+中得到一些启发和指导。定义在一个节点上运行的服务,并且在节点群集中仅在一个节点上运行。如果该节点出现故障或从集群中弹出,则会为新节点分配单例。[JBoss集群的]底层实现是JGroups。

我不能评论JGroups的经验,但它肯定能够做到这一点。对于我们(在我的工作中)的需求,我们编写了简单的基于UDP的集群框架。框架主持选举并选择领导人,如果领导人去世,则其中一名成员开始选举。感谢您的评论!这是一个很好的信息。我不能评论JGroup的经验,但肯定它能够做到这一点。对于我们(在我的工作中)的需求,我们编写了简单的基于UDP的集群框架。框架主持选举并选择领导人,如果领导人去世,则其中一名成员开始选举。感谢您的评论!这是很好的信息。这看起来很棒。我会看一看,如果这个答案行得通,我会接受的。这个看起来很棒。我会看一看,如果这个答案行得通,我会接受的。