Heroku Rails3.2の環境で10分ごとにタスクを実行出来るようにします。
ほぼ
https://devcenter.heroku.com/articles/scheduler
からの写しですが。
ローカルのコンソールから
heroku addons:add scheduler:standard
をタイプ、もしくはHerokuの自分のアカウント->Add-onsから
Heroku Scheduler を追加します。
ローカルへ戻り、
lib/tasks/ フォルダ内に
scheduler.rake ファイルを作成し、以下をコピペ。
task :hitotsu_me => :environment do
puts ” ^-^ ”
NewsFeed.update
puts “shu-ryou.”
end
task :futatsu_me => :environment do
puts “deleting ”
NewsFeed.update
puts “done.”
end
hitotsu_me、futatsu_meは好きなメソッドの名前、
endまでの間は行いたい処理の内容に書き換えてください。
Herokuの自分のアカウントへ戻り、My Appsから
自分のアプリを選択し、右上のAdd-ons▽をクリックすると
アドオンがプルダウンされるので、Heroku Schedulerを選択。
Add job…をクリックし、左端には
rake hitotsu_me と入力(メソッドの名前は書き換えたものにしてください)
Frequencyは行いたい間隔をセット(1日ごと、一時間ごと、10分ごと)
セットしたら右端のSaveをクリック。
これで次回Next Runと表示されてる時間に勝手にタスクが走ります。
チラ裏:task をtaksなんかと書き間違えたりするとアプリそのものがまともに動かなくなったりします。お気をつけて。