标签: quartz-scheduler

中断的石英触发器无法恢复

在我的项目中,我正在创建一个立即 SimpleTrigger 来调用虚拟作业(执行持续超过 30 秒的操作)。我已将失火策略设置为 MISFIRE_INSTRUCTION_FIRE_NOW 并且作业请求恢复标志也设置为 true。

作业启动后(Quartz DB 存储中的状态从 READY 转换为 RUNNING),我故意反弹(重新启动)整个系统,这会中断正在运行的作业。当系统回到活动状态时,我看到中断的作业根本不会重新启动。

在我们的生产系统中,这会造成严重伤害,因为任何软件更新都会无意中最终中断该实例正在运行的作业,并且这些作业根本不会再次启动(一项关键的一次性作业将未完成,从而在即将到来的系统中造成不良的连锁反应)工作)。从我们的角度来看,这是非常不受欢迎的。

我想要的是被中断的作业在系统再次备份后也会触发(本质上相同的行为是触发计划时间是在系统停机期间并且策略是 MISFIRE_INSTRUCTION_FIRE_NOW)。这里有解决方法吗?

quartz-scheduler

1
推荐指数
1
解决办法
3021
查看次数

如何删除 Quartz JDBC Store 中的作业?

我编写了这个方法来从 Quartz JDBC 中删除作业

public boolean removeJob(String jobName) {
    try {
        JobKey jobKey = JobKey.jobKey(jobName);  
        try {    
            Scheduler sched = schedulerFactoryBean.getScheduler();  
            logger.info("RESULT: " + sched.deleteJob(jobKey)); 
        } catch (Exception e) {    
            throw new RuntimeException(e);    
        }    
        return true; 
    } catch (Exception ex) {
        logger.error(ex.getMessage());
        return false; 
    } 
} 
Run Code Online (Sandbox Code Playgroud)

deleteJob总是会回来false。因此该作业不会从 mysql 的 JDBC 表中删除。我究竟做错了什么。我只想从调度程序中完全删除此作业

java spring quartz-scheduler

1
推荐指数
1
解决办法
2701
查看次数

使用 Java 的 Quartz 作业调度程序,卡在待机模式而不执行作业

我有一堂课,我在其中执行一些活动,我想创建一个作业来自动处理此操作,例如每 x 分钟安排一次。我正在使用 Quartz,这个类实现了 Job,在我的驱动程序类中,我正在创建我的 jobdetail、调度程序和触发器,然后启动它。但是,该作业尚未执行,日志信息:

    NOT STARTED.
  Currently in standby mode.
  Number of jobs executed: 0
Run Code Online (Sandbox Code Playgroud)

我的驱动程序类中调度程序的代码:

try {

        JobDetail job = JobBuilder.newJob(TestMkFPMJob.class).withIdentity("TestMkFPMJob").build();
        Trigger trigger = TriggerBuilder.newTrigger().withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInSeconds(Integer.parseInt(strTimeSched)).repeatForever()).build();


        SchedulerFactory schFactory = new StdSchedulerFactory();
        Scheduler sch = schFactory.getScheduler();
        sch.start();
        sch.scheduleJob(job, trigger);

            } 
      catch (SchedulerException e)
      {
        e.printStackTrace();
        System.out.println("Scheduler Error");
      }
Run Code Online (Sandbox Code Playgroud)

“TestMkFPMJob”是处理我的操作的作业类,并且 strTimeSched 已被获取并设置为从以下位置获取的 120

我一直在寻找类似的问题,但似乎找不到任何前进的提示,感激不尽。请注意,这是我第一次使用 Quartz/Job 调度。

java quartz-scheduler

1
推荐指数
1
解决办法
2129
查看次数

如何做一个特殊的cron工作?

我需要做一个cron工作,在unix服务器上每40分钟运行一次java程序.考虑到:1)它应该从8点30分到12点30分,从星期一到星期五从14点到18点2)考虑假期.

我已经阅读了很多关于它的信息,发现这个*/30 8..13,14..19**1..5是最接近的解决方案.我想知道crontab是否可以做我想要的,如果不是,Quartz能够做到这一点吗?

谢谢你的帮助

java unix cron quartz-scheduler

0
推荐指数
1
解决办法
664
查看次数

使用IJobListener获取作业异常(Quartz.NET)

我在Quartz.NET中使用IJobListener来审核所有工作成功/失败.当作业失败时,我希望将异常带入IJobListener,以便也可以存储异常以供以后分析.

目前我的工作听众是这样的:

public virtual void JobWasExecuted(JobExecutionContext context, JobExecutionException x)
        {

}
Run Code Online (Sandbox Code Playgroud)

但是,即使作业的Execute方法中的所有事务都包含在带有catch(异常x)的try中,然后我抛出,但是从不填充JobExecutionException的'x'.

有没有一种特殊的方法来实际获取作业监听器的异常?

谢谢

c# quartz-scheduler quartz.net

0
推荐指数
1
解决办法
1611
查看次数

如何在java中使用quartz scheduler?

我需要安排一个任务,每天晚上7点在java使用quartz运行.有人能指出如何在java中使用石英调度程序的好教程吗?

java quartz-scheduler

0
推荐指数
1
解决办法
9945
查看次数

我需要一个grails石英样本项目

我只需要一个使用Quartz的示例项目或一个逐步解释所有内容的好教程.

grails groovy quartz-scheduler

0
推荐指数
1
解决办法
2373
查看次数

如何从Quartz调度程序查询预定作业?

Scheduler我的应用程序中有一个对象,我Job使用该scheduleJob方法添加了它.

在我的代码中,我立即安排JobTrigger:

TriggerBuilder.newTrigger().startNow().build();
Run Code Online (Sandbox Code Playgroud)

我的问题是如何判断哪些Job是我的SchedulergetCurrentlyExecutingJobs到目前为止,只有一种看似不可靠的方法.

java quartz-scheduler

0
推荐指数
1
解决办法
4701
查看次数

Grails 3.0和Quartz插件:我该如何安装它?

如果在build.gradle文件中添加以下内容:

repositories {
        maven { url "https://repo.grails.org/grails/repo/"}
    }
dependencies {
    compile "org.grails.plugins:quartz:1.0.2"
}
Run Code Online (Sandbox Code Playgroud)

这可以让它编译.虽然,跑步

grails create-job MyJob
Run Code Online (Sandbox Code Playgroud)

导致失败.我手动添加grails-app/jobs/MyJob触发器不会触发,调用MyJob.schedule()会导致找不到方法错误.

grails quartz-scheduler gradle grails-3.0

0
推荐指数
1
解决办法
1727
查看次数

JavaScript API,用于将cron表达式转换为人类可读的字符串

我使用下面的Javascript API来创建Quartz兼容的UI,为服务器端的石英服务提供cron表达式.

https://github.com/felixruponen/jquery-cron

我们是否有任何API,我们可以使用它将cron表达式转换为Java Script中的人类可读字符串.

谢谢

javascript cron jquery quartz-scheduler

0
推荐指数
1
解决办法
4864
查看次数