Quartz 高级(企业级)特性

集群

目前,集群功能仅适用于 AdoJobStore(即 JobStoreTX)。集群的特点包括负载均衡和作业故障转移(如果 JobDetail 的 "request recovery" 标志设置为 true)。

要启用集群,需将 quartz.jobStore.clustered 属性设置为 "true"。集群中的每个实例都应使用 Quartz 属性的同一副本。例外情况是,可以使用完全相同的属性,但允许以下差异:不同的线程池大小,以及 quartz.scheduler.instanceId 属性的不同值。集群中的每个节点都必须有一个唯一的实例 ID,这可以通过将此属性的值设置为 AUTO 轻松实现(无需使用不同的属性文件)。

警告
除非它们的时钟通过某种时间同步服务(守护进程)定期同步(时钟之间的时间差必须在一秒之内),否则切勿在不同的机器上运行集群。如果不熟悉如何操作,可以参考 NIST 时间频率部门提供的互联网时间服务
警告
绝不要在一个非集群实例上启动(`scheduler.Start()`)针对其他实例正在运行(已`Start()`)的相同数据库表集的操作。这可能会导致严重的数据损坏,并且肯定会遇到不稳定的行为。
警告
监控并确保您的节点有足够的 CPU 资源来完成作业。当某些节点达到 100%的 CPU 使用率时,它们可能无法更新作业存储,而其他节点可能会认为这些作业丢失,并通过重新运行来恢复它们。
在本文档中