我的Grails 1.3.7应用程序需要处理大XML文件,因此我有一个向其上传大文件的 Controller ,然后将服务器上此文件的路径提供给进行处理的后台线程,以便我可以立即从 Controller 操作返回。 现在,我正在使用Grails Executor插件,它工作正常。我有一个上载域对象,该对象随处理进度(当前状态,已处理元素的数量等)而更新。但现在我还有2个要求: 当应用程序崩溃或服务器关闭时,我想拦截该事件并更新我的Upload域,以说该进程已被中断 我希望用户在单击链接时能够中断自己的处理,并可能从…

2020年11月29日 0条评论 74点热度 阅读全文

我正在尝试创建类似的应用程序,如本文https://github.com/heroku/devcenter-java-quartz-rabbitmq在Heroku上建议的此处https://devcenter.heroku.com/articles/scheduled-jobs-custom-clock-processes-java-quartz-rabbitmq所述。唯一的区别是,目前我有一个web应用程序不执行任何操作("Hello World")和一个scheduler应用程序正在打印当前时间。不幸的是,30…

2020年11月23日 0条评论 50点热度 阅读全文

我成功测试了与jdbcjobstore群集的调度程序。 但是我想创建一些可以为某些调度程序指定的作业。我以为通过将“ isVolatile”设置为“ true”,但触发器(具有isVolatile = true)仍保存在数据库中。 任何帮助,不胜感激! PS:我正在使用Quartz 1.8 解决方案如下: 可变作业在集群环境中是非易失性的。在这种情况下,我建议您在调度程序上使用RAMJobStore。 通常,您应该在日志中: note: volatile triggers are effectively non-v…

2020年11月21日 0条评论 44点热度 阅读全文

我正在使用Quartz(1.6.6),它是一个很棒的系统,但有一个真正的问题困扰我-我希望能够为我的工作使用非默认构造函数。(是的,我已经尝试过JobFactory,但是我不喜欢这种解决方案。请参见下文) 含义-代替: JobDetail jobDetails = new JobDetail(jobUniqueName, JOBS_GROUP, CrawlJob.class); 我想拥有一些与Java Executoers更相似的东西: CrawlJob crawlJob = new CrawlJob(someth…

2020年11月10日 0条评论 24点热度 阅读全文

在我的应用程序中,要求能够根据传入的请求类型(动态地)创建计划作业。 我仍然可以使用Spring创建和触发Jobs吗?如果是,怎么办? 任何帮助将是有用的。 解决方案如下: 鉴于SchedulerFactoryBean公开了本地Quartz Scheduler对象,您可以将其直接连接到 Controller 类,然后使用Scheduler对象动态创建和注册触发器和作业。 Spring本身不能用于调度动态创建的作业,因为Spring的Bean支持将用于静态配置的作业,但是本机Quartz Scheduler API足…

2020年10月24日 0条评论 29点热度 阅读全文

我的情况就是这样 我希望每个月都在日期30上触发一个触发器,但是2月没有这个特定的日期,所以在执行过程中,石英将通过异常,或者它将在2月28日执行该触发器。它将引发异常,那将是解决方案。 thnx。 解决方案如下: 试试这个。 触发器= newTrigger().withIdentity(“ trigger3”,“ group1”)。现在开始().withSchedule(cronSchedule(“ 0 0 15 L *?”))。建立(); //在每月的最后一天15:00触发 引用此链接 http://quart…

2020年10月21日 0条评论 32点热度 阅读全文

我对grails技术陌生。现在我要用grails编写一个调度程序,所以我在那里遇到麻烦。 quartz 版本2.2.1 Grails版本2.3.7 1)这是我的工作。 public class OrderFetchJob implements Job { private static Logger log = Logger.getLogger(OrderFetchJob.class); public OrderFetchJob() { } public void execute(JobExecutionContex…

2020年10月8日 0条评论 32点热度 阅读全文

我遇到以下问题:我有一个grails应用程序,带有quartz插件和一个持久存储(Oracle)。我的工作类别有一个空的触发器块,如下所示: class VodServerJob { static triggers = {} def volatility = false; def durability = true; def concurrency = false; def group = "MyGroup" def execute(context) { } } ...但是我在执行过程中以编程方式添加了触发器(让用…

2020年10月8日 0条评论 22点热度 阅读全文

我正在通过代码实现石英作业调度。下面是我计划和重新计划石英作业的方法。 void setJobSchedular(ScraperSearchOnRequest scraperSearchOnRequestInstance) { try { String groupName = "Scraper Group" + scraperSearchOnRequestInstance?.id String jobName = "ScraperOnRequestJob" Scheduler scheduler = getJobM…

2020年10月2日 0条评论 23点热度 阅读全文

如何为同一工作安排不同的时间。 例如:我有一份工作(假设工作名称为“ job1”) job1具有差异计时器(20 * * * * ?)和(0 0/2 * * * ?) 第一个计时器需要每20秒安排一次,第二个计时器需要每2分钟安排一次。 我的问题是最后一个计时器只能调度。 解决方案如下: 您只能将其设置为20秒。这样,在第六次触发时,您将有2分钟的触发时间。还是仅仅是一个例子? 否则,对于AFAIK,您将需要创建两个实例。

2020年9月26日 0条评论 39点热度 阅读全文