Delayed Processing Roundup in Rails
While working on a Rails 3 application running on Heroku, I found the need to process operations after a delay. Say a 3 minute delay, then revisit the task. If certain criteria aren’t yet met, put it back in for another 3 minute delay.
I sought recommendations from my Ruby User Group and got some good suggestions. This post will explore some of those along with others I found. I’ll try to identify pros and cons of each as related to my project and needs. This isn’t an exhaustive analysis, but I hope this can be of some value to others.
- DelayedJob gem (the active collectiveidea fork of the original)
- Heroku Delayed Job Autoscale gem
- HireFire gem
- Cron (cron via whenever gem as well)
- Resque gem
- Girl Friday gem