Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Ruby
  3. Backburner

Backburner

MITRuby

A Ruby gem providing a simple and reliable beanstalkd-powered job queue for background processing.

Visit WebsiteGitHubGitHub
432 stars68 forks0 contributors

What is Backburner?

Backburner is a Ruby gem that provides a job queue system powered by beanstalkd, enabling asynchronous processing of background tasks. It allows developers to enqueue jobs, manage multiple queues, set priorities, and handle retries, solving the need for reliable and scalable background job processing in Ruby applications.

Target Audience

Ruby developers building web applications with Rails, Sinatra, or Padrino who need a robust and simple background job processing solution.

Value Proposition

Developers choose Backburner for its tight integration with beanstalkd, which offers built-in features like priorities, persistence, and speed without additional complexity, along with familiar patterns inspired by Resque and DelayedJob.

Overview

Simple and reliable beanstalkd job queue for ruby

Use Cases

Best For

  • Processing high volumes of background jobs in Ruby web apps
  • Handling email sending and newsletter delivery asynchronously
  • Managing prioritized task queues with configurable retries
  • Scheduling delayed jobs for future execution
  • Integrating with Rails, Sinatra, or Padrino for job processing
  • Building reliable job processing with beanstalkd as the backend

Not Ideal For

  • Applications deployed on Windows that require forking-based concurrency models (e.g., ThreadsOnFork worker)
  • Teams wanting an all-in-one solution with a built-in, feature-rich web dashboard for job monitoring
  • Projects needing tight integration with ActiveRecord for transactional job persistence or database-backed queues
  • Environments where managing an additional beanstalkd service is operationally prohibitive

Pros & Cons

Pros

Beanstalkd-Powered Efficiency

Leverages beanstalkd's native features like priorities, persistence, and fast in-memory processing without extra gem code, ensuring high performance for job queues.

Flexible Job Patterns

Supports both custom job classes and the async method for enqueuing any object's method, offering versatility similar to DelayedJob with minimal boilerplate.

Configurable Retry Logic

Allows setting exponential back-off via retry_delay_proc and max_job_retries, providing robust error handling for transient failures, though defaults to no retries.

Multiple Worker Strategies

Includes Simple, Forking, ThreadsOnFork, and Threading workers to adapt to different concurrency needs, with options for forking or thread-based processing.

Cons

External Service Dependency

Relies on beanstalkd being installed and maintained separately, adding operational overhead compared to database-backed queues like DelayedJob.

Platform-Specific Limitations

Workers like ThreadsOnFork are incompatible with Windows due to lack of fork, restricting deployment options and requiring alternative setups.

JSON Serialization Constraint

Job arguments must be JSON-serializable, preventing direct passing of complex Ruby objects and forcing ID-based references, which can be limiting.

Default No Retries

Out-of-the-box, max_job_retries is set to 0, meaning jobs fail silently without retries unless explicitly configured, risking data loss.

Open Source Alternative To

Backburner is an open-source alternative to the following products:

R
Resque

Resque is a Redis-backed Ruby library for creating background jobs, placing them on multiple queues, and processing them later.

D
DelayedJob

DelayedJob is an alternative spelling/implementation of the Delayed Job background job processing library for Ruby on Rails.

Frequently Asked Questions

Quick Stats

Stars432
Forks68
Contributors0
Open Issues45
Last commit4 months ago
CreatedSince 2012

Tags

#task-queue#reliability#ruby-gem#asynchronous-processing#background-jobs#concurrency#beanstalkd#ruby#job-queue

Built With

R
Ruby
b
beanstalkd

Links & Resources

Website

Included in

Ruby14.1k
Auto-fetched 10 hours ago

Related Projects

Delayed JobDelayed Job

Database based asynchronous priority queue system -- Extracted from Shopify

Stars4,818
Forks950
Last commit4 months ago
good_jobgood_job

Multithreaded, Postgres-based, Active Job backend for Ruby on Rails.

Stars2,968
Forks240
Last commit25 days ago
Sucker PunchSucker Punch

Sucker Punch is a Ruby asynchronous processing library using concurrent-ruby, heavily influenced by Sidekiq and girl_friday.

Stars2,634
Forks109
Last commit4 months ago
QueQue

A Ruby job queue that uses PostgreSQL's advisory locks for speed and reliability.

Stars2,319
Forks194
Last commit4 months ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub