Quartz调度程序在集群环境中发布作业

时间:2017-08-02 15:08:36

标签: quartz-scheduler

我有一个带有两个节点的集群,它连接到同一个数据库,还有一个预定的作业,由Quartz调度程序在每10分钟启动一次。在quartz.properties org.quartz.jobStore.isClustered=true已设置。

我对调度程序是否会为每个第10分钟可以访问的同一节点发出作业感兴趣,或者它使用某种算法来确定哪个节点将完成这项工作。

我在文档中找不到任何相关内容(http://www.quartz-scheduler.org/documentation/quartz-2.x/configuration/ConfigJDBCJobStoreClustering.html)。

谢谢。

1 个答案:

答案 0 :(得分:2)

我在石英教程中找到了这个:

  

每次触发只会触发一个节点。我的意思是,如果作业有一个重复的触发器,告诉它每10秒触发一次,那么在12:00:00正好有一个节点将运行该作业,而在12:00:10正好会有一个节点运行每次都不一定是同一个节点 - 它或多或少是随机的节点运行它。对于繁忙的调度程序(许多触发器),负载平衡机制几乎是随机的,但有利于刚刚对非繁忙(例如一个或两个触发器)调度程序有效的同一节点。

http://www.quartz-scheduler.org/documentation/quartz-2.x/tutorials/tutorial-lesson-11.html