mini_scheduler
MiniScheduler adds recurring jobs to Sidekiq.
Installation
Add this line to your application's Gemfile:
gem 'mini_scheduler'
And then execute:
$ bundle
Or install it yourself as:
$ gem install mini_scheduler
In a Rails application, create files needed in your application to configure mini_scheduler:
bin/rails g mini_scheduler:install
rake db:migrate
An initializer is created named config/initializers/mini_scheduler.rb
which lists all the configuration options.
Usage
Create jobs with a recurring schedule like this:
class MyHourlyJob
include Sidekiq::Worker
extend MiniScheduler::Schedule
every 1.hour
def execute(args)
# some tasks
end
end
Options for schedules:
- every followed by a duration in seconds, like "every 1.hour".
- daily at: followed by a duration since midnight, like "daily at: 12.hours", to run only once per day at a specific time.
To view the scheduled jobs, their history, and the schedule, go to sidekiq's web UI and look for the "Scheduler" tab at the top.