3

在 Quartz 中安排任务时,您可以设置失火和重新安排。这可以在示例场景中使用,其中有一个作业每 30 分钟运行一次,并且可能存在积压,并且该作业将执行超过 30 分钟。为了防止同一作业运行两次,您可以使用@DisallowConcurrentExecution. 完成后,作业将执行使用simpleSchedule().withMisfireHandlingInstructionNowWithExistingCount().

现在在 Spring Scheduler 中似乎没有这种细粒度的能力,只有fixed-ratefixed-delay选项可以每 30 分钟安排一次或在上一个作业完成后等待 30 分钟。如果不使用限制为单个线程的锤子路线,因为我想增加线程数以使其他批处理作业同时运行,那么重新创建 Quartz 行为的最佳方法是什么?

4

1 回答 1

1

所以看起来基本的 Spring Scheduler 没有这样的机制。要做到这一点,要么使用 Spring Quartz Scheduler,要么直接使用 Quartz。

于 2015-03-09T08:20:42.807 回答