2011-07-30 195 views
2

根據Heroku的文檔:Cron作業在Heroku

Cron作業執行基於對當您啓用附加

不過,我啓用了cron的晚上8點兩個晚上前加上和cron作業沒有在昨晚8點運行。今天下午3點,我跑了「heroku cron」,工作沒有任何問題就開始了。

有沒有人有這方面的經驗?運行「heroku cron」是否意味着從現在起每天下午3點運行?我正在使用每日cron作業添加,而不是每小時插件。

謝謝, gearoid。

回答

4

你不需要插件就可以在Heroku上運行慢性任務。

安裝寶石

gem install rufus-scheduler 

確保您在成束或不過要包括它的寶石。

然後您需要創建一個名爲task_scheduler.rb的文件並將其粘貼在initializers目錄中。

require 'rufus/scheduler' 
scheduler = Rufus::Scheduler.start_new 

scheduler.every '1s' do 

     puts "Test!"  
     #do something here 

end 

如果您有任何問題,你可以看到這個博客帖子:

http://intridea.com/2009/2/13/dead-simple-task-scheduling-in-rails?blog=company

+1

這是否刪除需要延遲喬布斯呢? – Ger

+2

小心 - 如果我沒有弄錯,Heroku會在一段時間不活動後關閉閒置應用程序。如果你沒有得到很多流量,你可能會錯過一些計劃任務。 –

+1

結帳這篇博客文章我寫到黑客那個問題:http://codeglot.com/posts/25-simple_way_to_keep_smaller_apps_loaded_on_herkou – s84