2012-06-22 43 views

回答

0

使用OS Terracotta的JobStore,您无法决定在哪个节点上执行作业。并不是说它确实是随机发生的,但调度器的行为与非集群模式相同。所以基本上,每个节点都会按照固定的时间间隔,并基于下一个触发器触发何时获取下一个触发器。由于集群中的所有节点的行为方式相同,所以首先获取锁定,也将首先获取触发器。

Terracotta EE附带了Quartz Where功能,可以让您描述工作应该在哪里进行。您在Quartz上了解更多信息通过观看我做的这个简短的视频演示:http://www.codespot.net/blog/2011/03/quartz-where-screencast/

希望这会有所帮助。

1

如果'Quartz Scheduler'与'TerracotteJobStore'一起使用,并且有任何接下来要执行的Job,那么为该作业选择节点将是Random。

使用'Qurtz Where'可以在标准基础上创建Job。 意思是如果你想创建一个必须运行在核心至少为2或者 的节点上的作业,该节点运行在具有70%CPU负载平均值的节点上或者运行在节点上运行的作业在这种情况下,'Quartz Where'是有用的,至少具有Java堆空闲内存330 MB 。

可预测哪个Node,Job仅在“Quartz Where”情况下执行。

相关问题