StackShareStackShare
Follow on
StackShare

Discover and share technology stacks from companies around the world.

Follow on

© 2025 StackShare. All rights reserved.

Product

  • Stacks
  • Tools
  • Feed

Company

  • About
  • Contact

Legal

  • Privacy Policy
  • Terms of Service
  1. Stackups
  2. Utilities
  3. Background Jobs
  4. Background Processing
  5. Beanstalkd vs Que vs delayed_job

Beanstalkd vs Que vs delayed_job

OverviewComparisonAlternatives

Overview

Beanstalkd
Beanstalkd
Stacks111
Followers161
Votes74
delayed_job
delayed_job
Stacks53
Followers65
Votes6
GitHub Stars4.8K
Forks952
Que
Que
Stacks16
Followers20
Votes0

Beanstalkd vs Que vs delayed_job: What are the differences?

  1. Concurrency Model: Beanstalkd uses a single-threaded architecture, making it lightweight and efficient for handling job queues, while Que utilizes multiple worker processes for greater parallel processing capability. Delayed_job primarily relies on a single worker process, which can lead to potential bottlenecks when dealing with high job volumes.
  2. Job Prioritization: Beanstalkd allows jobs to be prioritized based on their urgency, ensuring important tasks are processed first, while Que and delayed_job do not offer built-in support for job prioritization, potentially causing delays in critical tasks.
  3. Persistence: Beanstalkd stores its job data in memory for fast access and retrieval, meaning all jobs will be lost in the event of a server crash unless persistent storage is configured. On the other hand, Que and delayed_job both store job data in a database, providing durability in case of system failures.
  4. Supported Programming Languages: Beanstalkd has client libraries available for multiple programming languages like Python, Ruby, and PHP, offering greater flexibility for developers, whereas Que and delayed_job are more Ruby-centric, limiting their use in multi-language environments.
  5. Job Scheduling: Beanstalkd lacks built-in support for automatic job scheduling or recurring tasks, requiring developers to implement custom solutions if such functionality is needed, whereas Que and delayed_job include features for scheduling jobs to run at specified intervals or times.
  6. Error Handling: Beanstalkd provides limited error handling capabilities, with options to bury, release, or delete failed jobs, while Que and delayed_job offer more extensive error handling mechanisms like retries, exponential backoff, and custom failure handling strategies.

In Summary, Beanstalkd, Que, and delayed_job differ in their concurrency model, job prioritization, persistence, supported programming languages, job scheduling, and error handling capabilities.

Share your Stack

Help developers discover the tools you use. Get visibility for your team's tech choices and contribute to the community's knowledge.

View Docs
CLI (Node.js)
or
Manual

Detailed Comparison

Beanstalkd
Beanstalkd
delayed_job
delayed_job
Que
Que

Beanstalks's interface is generic, but was originally designed for reducing the latency of page views in high-volume web applications by running time-consuming tasks asynchronously.

Delayed_job (or DJ) encapsulates the common pattern of asynchronously executing longer tasks in the background. It is a direct extraction from Shopify where the job table is responsible for a multitude of core tasks.

Que is a high-performance alternative to DelayedJob or QueueClassic that improves the reliability of your application by protecting your jobs with the same ACID guarantees as the rest of your data.

--
Concurrency; Efficiency; Safety;Transactional Control;Atomic Backups;Fewer Dependencies; Security
Statistics
GitHub Stars
-
GitHub Stars
4.8K
GitHub Stars
-
GitHub Forks
-
GitHub Forks
952
GitHub Forks
-
Stacks
111
Stacks
53
Stacks
16
Followers
161
Followers
65
Followers
20
Votes
74
Votes
6
Votes
0
Pros & Cons
Pros
  • 23
    Fast
  • 12
    Does one thing well
  • 12
    Free
  • 9
    Scalability
  • 8
    Simplicity
Pros
  • 3
    Easy to get started
  • 2
    Reliable
  • 1
    Doesn't require Redis
No community feedback yet

What are some alternatives to Beanstalkd, delayed_job, Que?

Sidekiq

Sidekiq

Sidekiq uses threads to handle many jobs at the same time in the same process. It does not require Rails but will integrate tightly with Rails 3/4 to make background processing dead simple.

Hangfire

Hangfire

It is an open-source framework that helps you to create, process and manage your background jobs, i.e. operations you don't want to put in your request processing pipeline. It supports all kind of background tasks – short-running and long-running, CPU intensive and I/O intensive, one shot and recurrent.

Resque

Resque

Background jobs can be any Ruby class or module that responds to perform. Your existing classes can easily be converted to background jobs or you can create new classes specifically to do work. Or, you can do both.

Faktory

Faktory

Redis -> Sidekiq == Faktory -> Faktory. Faktory is a server daemon which provides a simple API to produce and consume background jobs. Jobs are a small JSON hash with a few mandatory keys.

Kue

Kue

Kue is a feature rich priority job queue for node.js backed by redis. A key feature of Kue is its clean user-interface for viewing and managing queued, active, failed, and completed jobs.

Bull

Bull

The fastest, most reliable, Redis-based queue for Node. Carefully written for rock solid stability and atomicity.

Bulk Writer GPT

Bulk Writer GPT

Create unlimited articles in one go by uploading a CSV of keywords. The system handles queue management, real-time progress tracking, automatic retries for failed articles, and multi-format exports—making large-scale content creation fast, stable, and hands-free.

Cron

Cron

Background-only application which launches and runs other applications, or opens documents, at specified dates and times.

PHP-FPM

PHP-FPM

It is an alternative PHP FastCGI implementation with some additional features useful for sites of any size, especially busier sites. It includes Adaptive process spawning, Advanced process management with graceful stop/start, Emergency restart in case of accidental opcode cache destruction etc.

Goose

Goose

It is a simple, reliable & scalable background processing library for Clojure. It has a transparent design & cloud-native architecture.

Related Comparisons

Bootstrap
Materialize

Bootstrap vs Materialize

Laravel
Django

Django vs Laravel vs Node.js

Bootstrap
Foundation

Bootstrap vs Foundation vs Material UI

Node.js
Spring Boot

Node.js vs Spring-Boot

Liquibase
Flyway

Flyway vs Liquibase