我正在将Quartz与Atlas结合使用以获得预定服务。我有一个每天运行一次的程序(扫描我的邮箱以获取特定邮件)。如果有结果,我希望它在第二天再次运行。如果没有结果,作业应该再次执行,比方说15分钟。原因是因为邮件并不总是准时到达。
答案 0 :(得分:1)
如果你只是按照固定的时间表运行工作,比如每15分钟运行一次并且你的逻辑跟踪上一次成功的检索日期怎么办?
然后你的工作开始,它可以检查上一个成功的日期是今天,只是跳过邮箱扫描的逻辑。
如果您想要更复杂(更难跟踪)的版本,也始终可以安排新的触发器。
您可以通过调度上下文从作业访问调度程序以进行触发器调度。如果服务器出现故障,您可能需要知道在重新启动时是否已经加载了数据。这可能会支持第一种更简单的方法。