Heroku Scheduler
Heroku 上で10分、1時間、1日間隔でバックグラウンドジョブを実行出来る無料アドオンです。
公式ドキュメント
参考になるエントリー
- http://blogjp.sforce.com/2011/11/heroku-schedule-dc69.html
- http://sadayuki.hateblo.jp/entry/2011/12/28/194235
- http://d.hatena.ne.jp/ToMmY/20111121/1321802014
タスクを準備
バックグラウンドで実行するタスクを用意します。
# lib/tasks/scheduler.rake desc "This task is called by the Heroku scheduler add-on" task :create_sample => :environment do puts "fakestarbaby" end
タスクの詳細設定
Heroku Scheduler アドオンを追加して、タスクを実行するように設定します。
ここでは、タスクを「bundle exec rake create_sample」、間隔を10分に設定してみました。 後は、「Run」ボタンを押下すれば、バックグラウンドジョブが10分間隔で実行されるようになります。
まとめ
同様の Heroku アドオンとして提供されている Heroku Cron は、アドオンを追加したタイミングから1日間隔でしかバックグラウンドジョブを実行出来ないが、こちらは柔軟に間隔を任意選択出来るのでとっても便利だなーと思った。