簡體   English   中英

在Heroku中運行的Rails應用的脈沖或定時作業

[英]A pulse or cron job for Rails app running in Heroku

我需要每天執行一次一些代碼。 每天可能不止一次,錯過一天並不是世界末日。 該代碼將確保用戶根據某些條件獲得一些獎勵積分。 我將跟蹤他們是否已經獲得了獎勵積分,因此不會加倍。

一些簡單的cron作業偶爾會調用一個特定的控制器是完美的:

curl http://localhost/tasks/pulse

當然,真正的crontab條目效果很好。 還是在Rails中有針對這種情況的內部機制? 我正在使用最新的穩定Rai​​ls(當前是3.2.9)。

唯一的皺紋是這也需要在Heroku中起作用。

我剛剛注意到Heroku的Scheduler Heroku看起來很棒。 我可以在我的開發/測試環境中手動運行這些任務。 這是在Rails中處理脈沖/定時作業的最佳方法嗎? 有耙任務嗎? 易於將正在運行的rake任務納入測試中嗎?

每當它的Ruby寶石提供清晰的語法來編寫和部署cron作業時,您都可以檢出這個寶石。 它維護得很好,我自己沒有在Heroku上使用過,但是值得一看。

您可以做很多事情,例如

every 3.hours do
  runner "MyModel.some_process"
  rake "my:rake:task"
  command "/usr/bin/my_great_command"
end

Heroku Scheduler很好用,並且易於設置!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM