嗨,对 Rails 平台很陌生,并且正在寻找 Rails cron 作业调度教程。我已经完成了使用任何时间和其他调度 gem 的教程,但是我正在寻找一个核心 ruby 实现,它带有 rails 上的 cron 选项卡。先感谢您
问问题
10742 次
6 回答
2
要设置 cron 作业,您可以依靠名为WHENEVER的简单 gem 的帮助
它很容易实现。去吧。
于 2013-06-18T09:28:06.250 回答
1
对于“核心”rails/ruby 中“类 cron”任务的最小设置,我创建了https://github.com/Ebbe/arask
无需安装任何东西(除了 gem)或在 rails 之外设置任何东西。
添加gem 'arask'
到您的 Gemfile 中bundle install
,rails generate arask:install
运行rails db:migrate
.
现在您可以在文件 config/initializers/arask.rb 中设置您的任务:
arask.create task: 'send:logs', cron: '0 2 * * *' # At 02:00 every day
arask.create script: 'puts "IM ALIVE!"', interval: :daily
arask.create task: 'my:awesome_task', interval: :hourly
arask.create task: 'my:other_awesome_task', interval: 2.hours
如果服务器正在运行,任务将自动运行。
于 2018-06-12T08:04:43.867 回答
1
我正在使用rufus-scheduler
,它使用线程来执行预定的功能。配置非常简单。只需 3 个步骤:
1 - 添加宝石gem 'rufus-scheduler', '~> 3.6'
2 - 创建文件config/initializers/scheduler.rb
3 - scheduler.rb 中的编程时间表:
require 'rufus-scheduler'
s = Rufus::Scheduler.singleton
s.every '5s' do
#do every 5 seconds exec this code
puts "WOWWWWWWWWWWWWWWWWWWWW"
end
s.in '2d' do
# every 2 days exec this
puts "Now it's me"
end
于 2019-05-27T12:32:51.857 回答
0
您还可以使用外部免费服务来外包 cronjobs http://guardiano.getpeople.in
免责声明:我做到了
于 2015-06-11T15:39:41.553 回答