如何在rails中暂停和恢复delayed_job任务

时间:2013-01-16 19:34:37

标签: ruby-on-rails delayed-job

有没有办法在rails中暂停和恢复delayed_job的长任务。就我而言,任务是使用twilio发送数百条短信。我想允许我的用户暂停和恢复短信发送进度。可能吗?请告诉我。

1 个答案:

答案 0 :(得分:2)

遗憾的是,没有内置的方法可以使用delayed_job暂停和恢复作业。请参阅以下GitHub问题:https://github.com/collectiveidea/delayed_job/issues/58

这并不是说你无法通过额外的工作来完成这项工作。你可以让你的工作定期检查你的数据库,看看它是否应该等待继续。定义如何完成“等待”是另一回事。更有可能的是,最好的办法是设计一种“暂停”动作来停止当前作业并保存其状态的方法。然后,“恢复”将启动另一项工作,该工作将从中断处继续。