rails 使用whenever定時器實現週期性任務

1.首先在Gemfile文件添加

gem 'whenever', :require => false

2.然後執行命令生成config/schedule.rb文件 

wheneverize

3.在config/schedule.rb文件中添加自己要定時執行的任務

#每天凌晨4點執行任務,am表示晚上12點到中午12點,pm表示中午12點到晚上12點。   

#every 1.day, :at=>'4:00 am' do
#     runner 'AppNotificationsHelper.issuenotification'
# end

#每2分鐘執行一次任務   

every 2.minutes do
       runner 'AppNotificationsHelper.issuenotification'
   end
 

 

 runner方法執行的方法如下:

module AppNotificationsHelper

#加self,不加會報錯 

def self.issuenotification

     #自己方法裏面的邏輯
end

end
 

 4.執行命令,更新schedule.rb中的任務到cronjob中

whenever -i 

執行完命令後系統會有提示:[write] crontab file updated

5.執行週期性任務

whenever -w

6.查看我們的任務 

crontab -l

系統會打印:

出現這樣的打印則說明定時任務成功開啓了(如果你定時執行的方法沒有寫錯的話)

7.使用命令crontab -e可以查看和修改crontab的環境。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章