DelayedJob Discoveries
Delayed::Job is a currently unmaintained library (last updated Dec 2020)
Ditto for Delayed::RecurringJob
https://github.com/amitree/delayed_job_recurring (last updated June 2020)
Delayed::Job
gets stuck sometimes.
We started noticing problems related to DelayedJob around the time we were making some major infrastructure changes, so we spent a lot of time chasing in the wrong direction, ending with the glorious sentence “It doesn’t seem to be ECS vs EKS worker contention or EKS workers misbehaving”
The fix to our problems as far as we can tell was to remove a slow regex from some logging which happens inside a particular DelayedJob, which was not timing out but was getting “stuck” i.e. not failed but not running, for hours and days. We suspect resource contention issues somehow.
We expect Delayed::Job
and Delayed::Recurring
to break on rails 7 which is currently in alpha. given that we generally upgrade as soon as a stable version comes out, this is something we need to plan for.
We have 40+ DelayedJob jobs
Some links that I suspect I will be reading closely sometime this year
- https://stackshare.io/delayed_job/alternatives
- https://ruby.libhunt.com/delayed_job-alternatives
- https://stackoverflow.com/questions/32035808/memory-leak-on-delay-job-whats-the-better-alternative-on-rails
- https://goiabada.blog/upgrading-from-delayedjob-to-sidekiq-in-a-mature-rails-webapp-966fb0d11ace