延迟作业位于http://github.com/collectiveidea/delayed_job http://github.com/collectiveidea/delayed_job
Delayed_Job有能力做cron任务吗?比如每晚凌晨 1 点运行一个脚本。或者每 1 小时运行一个脚本。
如果不能的话,有哪些合适的宝石可以做到这一点?是否可以使用浏览器进行远程监控,并记录成功和错误?
我参与的一个项目尝试使用 DelayedJob 来安排未来的项目。太糟糕了。
相反,我建议您使用whenever gem:
http://github.com/javan/whenever http://github.com/javan/whenever
每当 Ruby gem 提供
定义 cron 作业的清晰语法。
它输出有效的 cron 语法并且可以
甚至为您编写 crontab 文件。
它被设计为与 Rails 良好配合
应用程序并可以部署
卡皮斯特拉诺。每当工作正常时
也独立。
代码如下(来自github)
every 3.hours do
runner "MyModel.some_process"
rake "my:rake:task"
command "/usr/bin/my_great_command"
end
every 1.day, :at => '4:30 am' do
runner "MyModel.task_to_run_at_four_thirty_in_the_morning"
end
every :hour do # Many shortcuts available: :hour, :day, :month, :year, :reboot
runner "SomeModel.ladeeda"
end
every :sunday, :at => '12pm' do # Use any day of the week or :weekend, :weekday
runner "Task.do_something_great"
end
Here http://railscasts.com/episodes/164-cron-in-ruby是有关如何使用它的 RailsCast 视频。
以及相应的ASCII 转换 http://asciicasts.com/episodes/164-cron-in-ruby.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)