whenever

在 Gemfile 里安装。

gem 'whenever', :require => false

然后执行 wheneverize . ,它会为你生成 config/schedule.rb 文件。

wheneverize .

在此文件里,你可以这么写:

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

every '0 0 27-31 * *' do
  command "echo 'you can use raw cron syntax too'"
end

它提供给你 3 种方式: runner (对应 model), rake (对应普通的 rake ), command (对应普通的 命令行)

当然了,你还可以有自己的一些定制,在此我们不做讨论,需要的请自行翻阅。

你可能感兴趣的:(whenever)