如何以编程方式更新Rescue日程安排?

时间:2013-07-24 18:53:48

标签: ruby-on-rails ruby resque

所以我正在考虑在我的应用程序中添加一些功能,这将允许用户安排某些任务。一个简短的搜索引起了我的注意Resque和Resque-Scheduler。但是,我想知道它是否会让我在运行中更改计划任务。从我所看到的,调度程序只从配置文件加载。有没有办法让这项工作,或者我是否追求错误的轨道?

2 个答案:

答案 0 :(得分:1)

不是config不是使用resque

resque-scheduler中安排任务的唯一方法

config通常用于重复执行任务,例如cron-tab

但是在你的情况下它不会在这里如何使用resque-scheduler以编程方式安排你的任务

Resque.enqueue_in(5.days, SomeJob) # run a job in 5 days

Resque.enqueue_at(5.days.from_now, SomeJob) # run SomeJob at a specific time

如果需要,您也可以删除它们

Resque.remove_delayed

您可以在 resque-scheduler README

中找到完整的指南

希望这个帮助

答案 1 :(得分:0)

您可以动态更改计划。

来自回购自述文件(https://github.com/resque/resque-scheduler

  

动态计划比静态计划具有更大的灵活性,因为它们可以设置,取消设置或更改,而无需重新启动resque-scheduler。如果调度必须在resque-scheduler重新启动后仍然存在,则可以指定。

[请注意,在撰写本文时,在Rakefile中设置“Resque:Scheduler.dynamic = true”的方法不起作用。而是使用设置env变量(DYNAMIC_SCHEDULE)]

的选项