Recomended value for org.quartz.jobStore.clusterCheckinInterval

2022-09-04 00:39:04

我们在集群环境中使用石英调度程序(集群中的两个节点,指向单个Oracle数据库)。目前,我们有两个几乎每一小时运行一次的作业

我们为石英作业提供了一个单独的数据库模式。我们注意到的是,quartz每15秒检查一次数据库(clusterCheckinInterval的默认值)。

我们不喜欢这样,喜欢让它不那么烦躁。我们想到的是给出一个1分钟的频率,但大多数示例配置都给出了clusterCheckinInterval20000

某些机构能否为集群CheckinInterval推荐一个合适的值?

来自 Quartz 文档:

org.quartz.jobStore.clusterCheckinInterval

Set the frequency (in milliseconds) at which this instance "checks-in"* with the other instances of the cluster. Affects the quickness of detecting failed instances.

答案 1

在 Quartz 群集中,告诉群集对故障转移的响应程度(考虑 Quartz 作业)。间隔越小,应用程序响应的速度就越快。实际上,群集节点使用此值来检查是否有可恢复的作业在损坏的节点上运行。如果是,Quartz会尝试重新运行它们。clusterCheckinInterval

通常,默认值足够好,但您必须考虑作业的频率以及错过作业运行可能导致的影响。

如果每秒必须运行多个作业,则必须将间隔设置为(以毫秒为单位)。1000

如果您有每秒运行的作业,但始终运行它们并不重要,那么5-15秒就足够了(取决于系统的容错能力)。

如果您有长达一小时的运行作业,每天运行几次,则可以将间隔提高到 60 秒。

我的观点是,我不会将每分钟20-30个数据库请求视为“负载”,因此我会将其设置为2或3秒(或以毫秒为单位)。20003000


答案 2

推荐