Tag: scheduling

如何在Spring 3.0中进行后台计算?

在spring应用程序中,我想做一些背景计算。 我的任务是保存一个实体(比方说GPS坐标),然后我想查询一个Web服务以获得所有坐标之间的距离并将它们存储在数据库中供以后使用。 在存储实体之后,可能无法与将用于计算距离的web服务建立连接。 我认为这可以通过在系统中引入一个工作来完成(有些事情就像一个cron工作)。 一旦我们想要在后台发生一些事情,我们就把它放在一个工作队列中。 队列将尝试执行它接收的第一个作业,作业将转到并连接到Web服务,如果由于某种原因它失败,它将保留在队列中并告诉队列它失败了。 然后,队列可以在指定的重试时间后执行。当它成功完成作业时,它将从作业队列中取出。 我很清楚要求,但我不确定使用哪种技术。 JMX,JMS,Spring Task Scheduler,Spring Integration,混合/匹配或全部。 这看起来类似于如何在spring webapp中创建后台进程? 但并非完全如此 编辑让我们进一步添加它。 还可以为每个CSV文件批量添加这些GPS坐标(通过CSV文件),每个条目将在文件中处理(顺序将是先到先服务文件和每个条目)。 删除案例可以更简单,因为预计不会删除任何内容(但可以在以后使用deatl)

如何取消Spring计时器执行

我需要取消Spring定时器执行或至少根据某些条件更改执行频率。 同时使用org.springframework.scheduling.quartz.SimpleTriggerBean和org.springframework.scheduling.timer.ScheduledTimerTask 。 找不到怎么做的方法。

使用java.util.timer与Quartz进行调度的优缺点?

我必须编写一个执行一系列任务的应用程序: 任务每天0200时运行一次。 任务将在凌晨4点运行一次 从0003小时开始以15分钟的间隔运行任务 从0005时开始以15分钟的间隔运行任务 使用普通java.util.timer Vs有什么优缺点。 石英这个? 我还应该考虑其他替代方案吗?

如何在特定时间安排任务?

我有一个java调度程序的问题,我的实际需要是我必须在特定时间启动我的进程,我会在某个时间停止,我可以在特定时间启动我的进程但我不能在某个时间停止我的进程,如何指定进程在调度程序中运行多长时间(这里我不会放入),任何人都有建议。 import java.util.Timer; import java.util.TimerTask; import java.text.SimpleDateFormat; import java.util.*; public class Timer { public static void main(String[] args) throws Exception { Date timeToRun = new Date(System.currentTimeMillis()); System.out.println(timeToRun); Timer timer1 = new Timer(); timer1.schedule(new TimerTask() { public void run() { //here i call another method } } }, timeToRun);//her i specify my start time } }

以编程方式创建Spring Framework任务?

我需要在我的应用程序中即时创建任务。 我怎样才能做到这一点? 我可以使用@autowired注释获取调度程序,但调度程序使用Runnable对象。 我需要提供Spring对象,以便我的任务也可以使用@autowired注释。 @Autowired private TaskScheduler taskScheduler;

Quartz Java恢复工作多次使用它

对于我的应用程序,我创建作业并使用CronTriggers安排它们。 每个作业只有一个触发器,作业名称和触发器名称都相同。 没有工作共享触发器。 现在当我创建像这样的“0/1 * * * *?”的cron触发器时 它指示作业每秒执行一次,它运行得很好。 当我第一次暂停工作时,问题就出现了: scheduler.pauseJob(jobName, jobGroup); 然后让我们说50秒后恢复工作: scheduler.resumeJob(jobName, jobGroup); 我所看到的是,在这50秒内,作业没有按要求执行。 但是当我恢复工作的那一刻,我同时看到了50份执行工作! 我认为这是由于失火指令的默认设置,但即使在创建时将触发器的失火指示设置为: trigger.setMisfireInstruction(CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING); 同样的事情发生了。 任何人都可以建议一种解决方法吗?