在 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"endevery 1.day, :at => '4:30 am' do runner "MyModel.task_to_run_at_four_thirty_in_the_morning"endevery :hour do # Many shortcuts available: :hour, :day, :month, :year, :reboot runner "SomeModel.ladeeda"endevery :sunday, :at => '12pm' do # Use any day of the week or :weekend, :weekday runner "Task.do_something_great"endevery '0 0 27-31 * *' do command "echo 'you can use raw cron syntax too'"end
它提供给你 3 种方式: runner (对应 model), rake (对应普通的 rake ), command (对应普通的 命令行)
当然了,你还可以有自己的一些定制,在此我们不做讨论,需要的请自行翻阅。