使用Spring 4和Quartz调度进行这种拼写和处理的最佳方法是什么?

时间:2015-12-29 16:18:20

标签: java spring spring-mvc scheduled-tasks quartz-scheduler

我正在使用Spring 4.2.xQuartz 2.1。 我的要求是,我需要以特定间隔(例如每30秒)轮询database并一次拉出5条记录并安排它们进行处理。在任何给定的时间点,只应提交5个进行处理。

例如,如果提交了5个,其中一个已完成,那么我需要再提取一个并提交它,以便不断处理其中的5个。

我可以编写一个cron触发器并轮询database并一次拉出5条记录并将其作为Job提交以进行处理。但如果没有处理第一批5(即仍在处理中),那么我不应再提交。我必须等到其中至少有一个完成,然后提交x个工作以满足5个限制。

方法是什么?我是否需要在spring/quartz内使用countdownlatch或其他可以处理此方案的内容?

Quartz线程计数(org.quartz.threadPool.threadCount)在这里有帮助吗?

0 个答案:

没有答案