Freedom251 › Task Queue Software
Delayed Job

What Delayed Job is
Delayed Job is a self-hosted, database-backed priority queue for running longer tasks asynchronously in the background. Listed uses include newsletter sending, image resizing, HTTP downloads, batch imports, and spam checks. Methods can be queued with `.delay`, with settings for priority, scheduled run time, and named queues. Separate worker processes can be assigned to selected queues or worker pools. Rails 4.2 and later can use Delayed Job as the Active Job queue adapter, and the documentation describes Active Record and Mongoid storage backends. Failed jobs are rescheduled with delays based on their attempt count, up to 25 attempts by default. After retries are exhausted, jobs are deleted by default, although a worker can be configured to keep them in the database. The default maximum runtime is four hours; a longer-running job could be picked up by another computer. The current gem specification requires Ruby 3.2 or later and ActiveSupport 3.0 or later but below 9.0. The software is free under the MIT license, which provides it as-is without warranty.
Who it suits
Delayed Job suits Ruby and Rails developers who need a self-hosted queue for background tasks. It is especially relevant to Rails 4.2-or-later projects using Active Job and teams able to meet its Ruby and ActiveSupport requirements.
What it does well
- Queues methods with priority and scheduled run times.
- Workers can target queues or worker pools.
- Supports Active Record and Mongoid storage backends.
- Configurable failed-job retention.
- Free and MIT-licensed.
What to know first
- Requires Ruby 3.2 or later.
- Default job runtime limit is four hours.
- Failed jobs are deleted by default after retries.
- Software is provided without warranty.
Limits
The default maximum job runtime is four hours, and the default maximum is 25 retry attempts. Failed jobs are deleted after retries unless workers are configured to keep them in the database.
Plans
| Plan | Billed and limits | Price |
|---|---|---|
| MIT-licensed software | MIT license; Ruby >= 3.2 | Free |
As github.com lists them, read 5 Oct 2026. The maker's own page has the final word.
Getting started
- Open the Delayed Job project page on GitHub.
- Check that your environment meets the Ruby and ActiveSupport requirements.
- Choose Active Record or Mongoid for queue storage.
- For Rails 4.2 and later, configure Delayed Job as the Active Job queue adapter.
- Queue methods with `.delay` and set any needed priority, schedule, or named queue.
- Start background worker processes and assign them to queues or worker pools.
Verdict
Delayed Job provides queueing, scheduling, and retry controls for background work in a self-hosted package. Check the runtime defaults and Ruby and ActiveSupport requirements, and plan how failed jobs should be retained.
Questions
Does Delayed Job cost anything?
It is free open-source software under the MIT license.
Where can Delayed Job run?
It is self-hosted. The current gem specification requires Ruby 3.2 or later and ActiveSupport 3.0 or later but below 9.0.
Can it run scheduled jobs?
Yes. Queue options include a scheduled run time.
Can Rails use Delayed Job?
Rails 4.2 and later can use it as the Active Job queue adapter.
What happens when a job fails?
Failed jobs are rescheduled with delays based on attempt count, up to 25 attempts by default. After retries, they are deleted by default, but workers can be configured to keep them.
Where can users get help?
The README points users to a Google Groups mailing list and Stack Overflow.
Facts from Delayed Job's own pages
- Failed-job handling
- Failed jobs are deleted by default after retries, but the worker can be configured to keep them in the database. · github.com, 5 Oct 2026
- Purpose
- Delayed::Job is a database-backed priority queue for running longer tasks asynchronously in the background. · github.com, 5 Oct 2026
- Queueing
- Methods can be queued with `.delay`, with options for priority, scheduled run time, and named queues. · github.com, 5 Oct 2026
- Rails integration
- Rails 4.2 and later can use Delayed::Job as the Active Job queue adapter. · github.com, 5 Oct 2026
- Requirements
- The current gem specification requires Ruby 3.2 or later and ActiveSupport 3.0 or later but below 9.0. · github.com, 5 Oct 2026
- Retry behavior
- Failed jobs are rescheduled with a delay based on the attempt count, and the default maximum is 25 attempts. · github.com, 5 Oct 2026
- Runtime limit
- The default maximum job runtime is four hours; the documentation warns that a longer job could be picked up by another computer. · github.com, 5 Oct 2026
- Security and warranty
- The MIT license grants use, copying, modification, distribution, sublicensing, and sale, and provides the software as-is without warranty. · github.com, 5 Oct 2026
- Storage backends
- The documentation describes Active Record and Mongoid backends for storing the job queue. · github.com, 5 Oct 2026
- Support
- The README points users to a Google Groups mailing list and Stack Overflow for help. · github.com, 5 Oct 2026
- Use cases
- The project lists newsletter sending, image resizing, HTTP downloads, batch imports, and spam checks among its uses. · github.com, 5 Oct 2026
- Workers
- Background workers can be started as separate processes and assigned to specific queues or worker pools. · github.com, 5 Oct 2026
Where Delayed Job stands on Freedom251
- Task Queue Software#17 of 37