Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Gems
  3. sidekiq-cron

sidekiq-cron

MITRubyv2.4.0

A scheduling add-on for Sidekiq that runs jobs at specified times using cron notation or natural language.

GitHubGitHub
1.9k stars302 forks0 contributors

What is sidekiq-cron?

Sidekiq-Cron is a Ruby gem that adds cron-based job scheduling to Sidekiq, allowing developers to schedule recurring background jobs using cron syntax or natural language. It solves the problem of automating periodic tasks—like sending nightly reports or cleaning up old data—within Sidekiq's ecosystem without relying on external cron daemons.

Target Audience

Ruby developers using Sidekiq for background job processing who need to schedule recurring tasks, such as sending periodic emails, generating reports, or performing regular database maintenance.

Value Proposition

Developers choose Sidekiq-Cron because it integrates directly with Sidekiq, supports multi-process safety to avoid duplicate jobs, offers flexible scheduling with natural language, and requires minimal configuration compared to managing separate cron systems.

Overview

Scheduler / Cron for Sidekiq jobs

Use Cases

Best For

  • Scheduling nightly report generation in a Rails application
  • Running periodic database cleanup or maintenance tasks
  • Automating recurring email campaigns or notifications
  • Enqueuing jobs at specific times with timezone support
  • Managing cron-like jobs within Sidekiq's existing infrastructure
  • Scheduling tasks with second-level precision (e.g., every 30 seconds)

Not Ideal For

  • Applications requiring event-driven or complex dependency-based job scheduling beyond simple time intervals
  • Projects not using Sidekiq or Ruby, as it's tightly coupled to the Sidekiq ecosystem
  • Environments where Redis is unavailable or undesirable for job coordination
  • High-frequency tasks needing sub-second precision without polling delays

Pros & Cons

Pros

Flexible Scheduling

Supports both standard cron syntax and natural language via Fugit, allowing expressions like 'every day at five' for intuitive configuration, as detailed in the scheduling options.

Multi-Process Safety

Uses Redis to coordinate across multiple Sidekiq processes, preventing duplicate job enqueuing and ensuring thread-safe operations, as explained in the thread-safe support section.

Declarative Configuration

Jobs can be defined in YAML files (e.g., config/schedule.yml), enabling easy management and automatic loading in Rails applications, highlighted in the YAML schedule files feature.

Integrated Web UI

Provides an optional web interface that integrates with Sidekiq's admin panel, allowing visualization and management of cron jobs without extra tools, as mentioned in the web UI integration.

Cons

Polling Latency

Checks for jobs every 30 seconds by default, causing potential delays for sub-minute schedules and requiring configuration tuning for second-precision jobs, which can be a bottleneck for high-frequency tasks.

Redis and Sidekiq Dependency

Heavily reliant on Redis for coordination and only compatible with Sidekiq, limiting flexibility and portability to other job processing systems, as it's designed exclusively for Sidekiq's ecosystem.

Namespace Management Issues

Changing namespaces can lead to duplicate jobs if not manually cleaned, and automatic namespace detection scales poorly, as admitted in the version 2.3 migration warnings about Redis load.

Frequently Asked Questions

Quick Stats

Stars1,940
Forks302
Contributors0
Open Issues0
Last commit12 days ago
CreatedSince 2013

Tags

#task-automation#scheduled-jobs#sidekiq#rails#redis#cron-jobs#job-scheduling#ruby-gem#background-jobs#ruby-on-rails#scheduler#ruby#cron

Built With

R
Ruby
R
Redis

Included in

Ruby14.1kGems2.8k
Auto-fetched 1 day ago

Related Projects

SidekiqSidekiq

Simple, efficient background processing for Ruby

Stars13,534
Forks2,481
Last commit4 days ago
WheneverWhenever

Cron jobs in Ruby

Stars8,872
Forks719
Last commit3 months ago
Delayed JobDelayed Job

Database based asynchronous priority queue system -- Extracted from Shopify

Stars4,822
Forks948
Last commit5 months 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 commit5 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