Spring Scheduler不允许并发备选方案



在Quartz中安排任务时,您可以设置不匹配和重新安排。这可以用于示例场景,其中有一个每30分钟运行一次的作业,并且可能存在积压,并且作业执行时间将超过30分钟。为了防止同一作业运行两次,可以使用@DisallowConcurrentExecution。一旦完成,作业将执行通过使用simpleSchedule().withMisfireHandlingInstructionNowWithExistingCount()排队的第二个实例。

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

所以基本的Spring Scheduler似乎没有这样的机制。要执行此操作,请使用Spring Quartz Scheduler,或直接使用Quartz。

最新更新